#
# Autogenerated by Thrift for thrift/compiler/test/fixtures/params/src/module.thrift
#
# DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
#  @generated
#

from thrift.py3.reflection import (
  ArgumentSpec as __ArgumentSpec,
  InterfaceSpec as __InterfaceSpec,
  MethodSpec as __MethodSpec,
  NumberType as __NumberType,
)

import folly.iobuf as _fbthrift_iobuf


import module.types as _module_types


def get_reflection__NestedContainers(for_clients: bool):
    spec: __InterfaceSpec = __InterfaceSpec(
        name="NestedContainers",
        methods=None,
        annotations={
        },
    )
    spec.add_method(
        __MethodSpec.__new__(
            __MethodSpec,
            name="mapList",
            arguments=(
                __ArgumentSpec.__new__(
                    __ArgumentSpec,
                    name="foo",
                    type=_module_types.Map__i32_List__i32,
                    kind=__NumberType.NOT_A_NUMBER,
                    annotations={
                    },
                ),
            ),
            result=None,
            result_kind=__NumberType.NOT_A_NUMBER,
            exceptions=(
            ),
            annotations={
            },
        )
    )
    spec.add_method(
        __MethodSpec.__new__(
            __MethodSpec,
            name="mapSet",
            arguments=(
                __ArgumentSpec.__new__(
                    __ArgumentSpec,
                    name="foo",
                    type=_module_types.Map__i32_Set__i32,
                    kind=__NumberType.NOT_A_NUMBER,
                    annotations={
                    },
                ),
            ),
            result=None,
            result_kind=__NumberType.NOT_A_NUMBER,
            exceptions=(
            ),
            annotations={
            },
        )
    )
    spec.add_method(
        __MethodSpec.__new__(
            __MethodSpec,
            name="listMap",
            arguments=(
                __ArgumentSpec.__new__(
                    __ArgumentSpec,
                    name="foo",
                    type=_module_types.List__Map__i32_i32,
                    kind=__NumberType.NOT_A_NUMBER,
                    annotations={
                    },
                ),
            ),
            result=None,
            result_kind=__NumberType.NOT_A_NUMBER,
            exceptions=(
            ),
            annotations={
            },
        )
    )
    spec.add_method(
        __MethodSpec.__new__(
            __MethodSpec,
            name="listSet",
            arguments=(
                __ArgumentSpec.__new__(
                    __ArgumentSpec,
                    name="foo",
                    type=_module_types.List__Set__i32,
                    kind=__NumberType.NOT_A_NUMBER,
                    annotations={
                    },
                ),
            ),
            result=None,
            result_kind=__NumberType.NOT_A_NUMBER,
            exceptions=(
            ),
            annotations={
            },
        )
    )
    spec.add_method(
        __MethodSpec.__new__(
            __MethodSpec,
            name="turtles",
            arguments=(
                __ArgumentSpec.__new__(
                    __ArgumentSpec,
                    name="foo",
                    type=_module_types.List__List__Map__i32_Map__i32_Set__i32,
                    kind=__NumberType.NOT_A_NUMBER,
                    annotations={
                    },
                ),
            ),
            result=None,
            result_kind=__NumberType.NOT_A_NUMBER,
            exceptions=(
            ),
            annotations={
            },
        )
    )
    return spec
