#
# Lockstep Software Development Kit for Python
#
# (c) 2021-2022 Lockstep, Inc.
#
# For the full copyright and license information, please view the LICENSE
# file that was distributed with this source code.
#
# @author     <NAME> <<EMAIL>>
# @copyright  2021-2022 Lockstep, Inc.
# @version    2022.4
# @link       https://github.com/Lockstep-Network/lockstep-sdk-python
#

from lockstep.lockstep_response import LockstepResponse

class DefinitionsClient:

    def __init__(self, client):
        self.client = client

    def query_countries(self, filter: str, include: str, order: str, pageSize: int, pageNumber: int) -> LockstepResponse:
        """
        Queries the ISO3166 List of Countries using the specified
        filtering, sorting, nested fetch, and pagination rules
        requested.

        More information on querying can be found on the [Searchlight
        Query Language](https://developer.lockstep.io/docs/querying-with-searchlight)
        page on the Lockstep Developer website. Your program may want to
        show a list of countries. The ISO maintains a list of countries
        called [ISO3166](https://www.iso.org/iso-3166-country-codes.html).
        For convenience, this list is available in the API.

        Parameters
        ----------
        filter : str
            The filter for this query. See [Searchlight Query
            Language](https://developer.lockstep.io/docs/querying-with-searchlight)
        include : str
            To fetch additional data on this object, specify the list of
            elements to retrieve. No collections are currently
            available, but may be offered in the future.
        order : str
            The sort order for this query. See See [Searchlight Query
            Language](https://developer.lockstep.io/docs/querying-with-searchlight)
        pageSize : int
            The page size for results (default 200). See [Searchlight
            Query Language](https://developer.lockstep.io/docs/querying-with-searchlight)
        pageNumber : int
            The page number for results (default 0). See [Searchlight
            Query Language](https://developer.lockstep.io/docs/querying-with-searchlight)
        """
        path = f"/api/v1/Definitions/countries"
        return self.client.send_request("GET", path, None, {"filter": filter, "include": include, "order": order, "pageSize": pageSize, "pageNumber": pageNumber})

    def query_currencies(self, filter: str, include: str, order: str, pageSize: int, pageNumber: int) -> LockstepResponse:
        """
        Queries Currencies on the Lockstep Platform using the specified
        filtering, sorting, nested fetch, and pagination rules
        requested.

        More information on querying can be found on the [Searchlight
        Query Language](https://developer.lockstep.io/docs/querying-with-searchlight)
        page on the Lockstep Developer website.

        Your app may wish to make use of a reference list that contains
        names and attributes for all ISO-4217 defined currency codes.
        This information is provided via a query endpoint so that you
        can use this API to provide a user selection screen.

        Parameters
        ----------
        filter : str
            The filter for this query. See [Searchlight Query
            Language](https://developer.lockstep.io/docs/querying-with-searchlight)
        include : str
            To fetch additional data on this object, specify the list of
            elements to retrieve. No collections are currently
            available, but may be offered in the future.
        order : str
            The sort order for this query. See See [Searchlight Query
            Language](https://developer.lockstep.io/docs/querying-with-searchlight)
        pageSize : int
            The page size for results (default 200). See [Searchlight
            Query Language](https://developer.lockstep.io/docs/querying-with-searchlight)
        pageNumber : int
            The page number for results (default 0). See [Searchlight
            Query Language](https://developer.lockstep.io/docs/querying-with-searchlight)
        """
        path = f"/api/v1/Definitions/currencies"
        return self.client.send_request("GET", path, None, {"filter": filter, "include": include, "order": order, "pageSize": pageSize, "pageNumber": pageNumber})

    def query_states(self, filter: str, include: str, order: str, pageSize: int, pageNumber: int) -> LockstepResponse:
        """
        Queries the list of States in the United States using the
        specified filtering, sorting, nested fetch, and pagination rules
        requested.

        More information on querying can be found on the [Searchlight
        Query Language](https://developer.lockstep.io/docs/querying-with-searchlight)
        page on the Lockstep Developer website. Your app may wish to
        make use of a reference list that contains names and codes for
        all states in the United States. This information is provided
        for the United States since many financial systems require
        mailing addresses that use codes for states.

        Parameters
        ----------
        filter : str
            The filter for this query. See [Searchlight Query
            Language](https://developer.lockstep.io/docs/querying-with-searchlight)
        include : str
            To fetch additional data on this object, specify the list of
            elements to retrieve. No collections are currently
            available, but may be offered in the future.
        order : str
            The sort order for this query. See See [Searchlight Query
            Language](https://developer.lockstep.io/docs/querying-with-searchlight)
        pageSize : int
            The page size for results (default 200). See [Searchlight
            Query Language](https://developer.lockstep.io/docs/querying-with-searchlight)
        pageNumber : int
            The page number for results (default 0). See [Searchlight
            Query Language](https://developer.lockstep.io/docs/querying-with-searchlight)
        """
        path = f"/api/v1/Definitions/states"
        return self.client.send_request("GET", path, None, {"filter": filter, "include": include, "order": order, "pageSize": pageSize, "pageNumber": pageNumber})

    def query_financial_systems(self, filter: str, include: str, order: str, pageSize: int, pageNumber: int) -> LockstepResponse:
        """
        Queries a list of financial systems using the specified
        filtering, sorting, nested fetch, and pagination rules
        requested.

        More information on querying can be found on the [Searchlight
        Query Language](https://developer.lockstep.io/docs/querying-with-searchlight)
        page on the Lockstep Developer website. Lockstep provides a list
        of financial systems that may be useful as a selection screen
        that allows customers to select from a list. You can query these
        items by name or attributes and use this data source to help
        users complete a selection.

        Parameters
        ----------
        filter : str
            The filter for this query. See [Searchlight Query
            Language](https://developer.lockstep.io/docs/querying-with-searchlight)
        include : str
            To fetch additional data on this object, specify the list of
            elements to retrieve. No collections are currently
            available, but may be offered in the future.
        order : str
            The sort order for this query. See See [Searchlight Query
            Language](https://developer.lockstep.io/docs/querying-with-searchlight)
        pageSize : int
            The page size for results (default 200). See [Searchlight
            Query Language](https://developer.lockstep.io/docs/querying-with-searchlight)
        pageNumber : int
            The page number for results (default 0). See [Searchlight
            Query Language](https://developer.lockstep.io/docs/querying-with-searchlight)
        """
        path = f"/api/v1/Definitions/financialsystems"
        return self.client.send_request("GET", path, None, {"filter": filter, "include": include, "order": order, "pageSize": pageSize, "pageNumber": pageNumber})

#
# Lockstep Software Development Kit for Python
#
# (c) 2021-2022 Lockstep, Inc.
#
# For the full copyright and license information, please view the LICENSE
# file that was distributed with this source code.
#
# @author     <NAME> <<EMAIL>>
# @copyright  2021-2022 Lockstep, Inc.
# @version    2022.4
# @link       https://github.com/Lockstep-Network/lockstep-sdk-python
#

from lockstep.lockstep_response import LockstepResponse

class DefinitionsClient:

    def __init__(self, client):
        self.client = client

    def query_countries(self, filter: str, include: str, order: str, pageSize: int, pageNumber: int) -> LockstepResponse:
        """
        Queries the ISO3166 List of Countries using the specified
        filtering, sorting, nested fetch, and pagination rules
        requested.

        More information on querying can be found on the [Searchlight
        Query Language](https://developer.lockstep.io/docs/querying-with-searchlight)
        page on the Lockstep Developer website. Your program may want to
        show a list of countries. The ISO maintains a list of countries
        called [ISO3166](https://www.iso.org/iso-3166-country-codes.html).
        For convenience, this list is available in the API.

        Parameters
        ----------
        filter : str
            The filter for this query. See [Searchlight Query
            Language](https://developer.lockstep.io/docs/querying-with-searchlight)
        include : str
            To fetch additional data on this object, specify the list of
            elements to retrieve. No collections are currently
            available, but may be offered in the future.
        order : str
            The sort order for this query. See See [Searchlight Query
            Language](https://developer.lockstep.io/docs/querying-with-searchlight)
        pageSize : int
            The page size for results (default 200). See [Searchlight
            Query Language](https://developer.lockstep.io/docs/querying-with-searchlight)
        pageNumber : int
            The page number for results (default 0). See [Searchlight
            Query Language](https://developer.lockstep.io/docs/querying-with-searchlight)
        """
        path = f"/api/v1/Definitions/countries"
        return self.client.send_request("GET", path, None, {"filter": filter, "include": include, "order": order, "pageSize": pageSize, "pageNumber": pageNumber})

    def query_currencies(self, filter: str, include: str, order: str, pageSize: int, pageNumber: int) -> LockstepResponse:
        """
        Queries Currencies on the Lockstep Platform using the specified
        filtering, sorting, nested fetch, and pagination rules
        requested.

        More information on querying can be found on the [Searchlight
        Query Language](https://developer.lockstep.io/docs/querying-with-searchlight)
        page on the Lockstep Developer website.

        Your app may wish to make use of a reference list that contains
        names and attributes for all ISO-4217 defined currency codes.
        This information is provided via a query endpoint so that you
        can use this API to provide a user selection screen.

        Parameters
        ----------
        filter : str
            The filter for this query. See [Searchlight Query
            Language](https://developer.lockstep.io/docs/querying-with-searchlight)
        include : str
            To fetch additional data on this object, specify the list of
            elements to retrieve. No collections are currently
            available, but may be offered in the future.
        order : str
            The sort order for this query. See See [Searchlight Query
            Language](https://developer.lockstep.io/docs/querying-with-searchlight)
        pageSize : int
            The page size for results (default 200). See [Searchlight
            Query Language](https://developer.lockstep.io/docs/querying-with-searchlight)
        pageNumber : int
            The page number for results (default 0). See [Searchlight
            Query Language](https://developer.lockstep.io/docs/querying-with-searchlight)
        """
        path = f"/api/v1/Definitions/currencies"
        return self.client.send_request("GET", path, None, {"filter": filter, "include": include, "order": order, "pageSize": pageSize, "pageNumber": pageNumber})

    def query_states(self, filter: str, include: str, order: str, pageSize: int, pageNumber: int) -> LockstepResponse:
        """
        Queries the list of States in the United States using the
        specified filtering, sorting, nested fetch, and pagination rules
        requested.

        More information on querying can be found on the [Searchlight
        Query Language](https://developer.lockstep.io/docs/querying-with-searchlight)
        page on the Lockstep Developer website. Your app may wish to
        make use of a reference list that contains names and codes for
        all states in the United States. This information is provided
        for the United States since many financial systems require
        mailing addresses that use codes for states.

        Parameters
        ----------
        filter : str
            The filter for this query. See [Searchlight Query
            Language](https://developer.lockstep.io/docs/querying-with-searchlight)
        include : str
            To fetch additional data on this object, specify the list of
            elements to retrieve. No collections are currently
            available, but may be offered in the future.
        order : str
            The sort order for this query. See See [Searchlight Query
            Language](https://developer.lockstep.io/docs/querying-with-searchlight)
        pageSize : int
            The page size for results (default 200). See [Searchlight
            Query Language](https://developer.lockstep.io/docs/querying-with-searchlight)
        pageNumber : int
            The page number for results (default 0). See [Searchlight
            Query Language](https://developer.lockstep.io/docs/querying-with-searchlight)
        """
        path = f"/api/v1/Definitions/states"
        return self.client.send_request("GET", path, None, {"filter": filter, "include": include, "order": order, "pageSize": pageSize, "pageNumber": pageNumber})

    def query_financial_systems(self, filter: str, include: str, order: str, pageSize: int, pageNumber: int) -> LockstepResponse:
        """
        Queries a list of financial systems using the specified
        filtering, sorting, nested fetch, and pagination rules
        requested.

        More information on querying can be found on the [Searchlight
        Query Language](https://developer.lockstep.io/docs/querying-with-searchlight)
        page on the Lockstep Developer website. Lockstep provides a list
        of financial systems that may be useful as a selection screen
        that allows customers to select from a list. You can query these
        items by name or attributes and use this data source to help
        users complete a selection.

        Parameters
        ----------
        filter : str
            The filter for this query. See [Searchlight Query
            Language](https://developer.lockstep.io/docs/querying-with-searchlight)
        include : str
            To fetch additional data on this object, specify the list of
            elements to retrieve. No collections are currently
            available, but may be offered in the future.
        order : str
            The sort order for this query. See See [Searchlight Query
            Language](https://developer.lockstep.io/docs/querying-with-searchlight)
        pageSize : int
            The page size for results (default 200). See [Searchlight
            Query Language](https://developer.lockstep.io/docs/querying-with-searchlight)
        pageNumber : int
            The page number for results (default 0). See [Searchlight
            Query Language](https://developer.lockstep.io/docs/querying-with-searchlight)
        """
        path = f"/api/v1/Definitions/financialsystems"
        return self.client.send_request("GET", path, None, {"filter": filter, "include": include, "order": order, "pageSize": pageSize, "pageNumber": pageNumber})

# # Lockstep Software Development Kit for Python # # (c) 2021-2022 Lockstep, Inc. # # For the full copyright and license information, please view the LICENSE # file that was distributed with this source code. # # @author     <NAME> <<EMAIL>> # @copyright  2021-2022 Lockstep, Inc. # @version    2022.4 # @link       https://github.com/Lockstep-Network/lockstep-sdk-python # Queries the ISO3166 List of Countries using the specified         filtering, sorting, nested fetch, and pagination rules         requested.          More information on querying can be found on the [Searchlight         Query Language](https://developer.lockstep.io/docs/querying-with-searchlight)         page on the Lockstep Developer website. Your program may want to         show a list of countries. The ISO maintains a list of countries         called [ISO3166](https://www.iso.org/iso-3166-country-codes.html).         For convenience, this list is available in the API.          Parameters         ----------         filter : str             The filter for this query. See [Searchlight Query             Language](https://developer.lockstep.io/docs/querying-with-searchlight)         include : str             To fetch additional data on this object, specify the list of             elements to retrieve. No collections are currently             available, but may be offered in the future.         order : str             The sort order for this query. See See [Searchlight Query             Language](https://developer.lockstep.io/docs/querying-with-searchlight)         pageSize : int             The page size for results (default 200). See [Searchlight             Query Language](https://developer.lockstep.io/docs/querying-with-searchlight)         pageNumber : int             The page number for results (default 0). See [Searchlight             Query Language](https://developer.lockstep.io/docs/querying-with-searchlight) Queries Currencies on the Lockstep Platform using the specified         filtering, sorting, nested fetch, and pagination rules         requested.          More information on querying can be found on the [Searchlight         Query Language](https://developer.lockstep.io/docs/querying-with-searchlight)         page on the Lockstep Developer website.          Your app may wish to make use of a reference list that contains         names and attributes for all ISO-4217 defined currency codes.         This information is provided via a query endpoint so that you         can use this API to provide a user selection screen.          Parameters         ----------         filter : str             The filter for this query. See [Searchlight Query             Language](https://developer.lockstep.io/docs/querying-with-searchlight)         include : str             To fetch additional data on this object, specify the list of             elements to retrieve. No collections are currently             available, but may be offered in the future.         order : str             The sort order for this query. See See [Searchlight Query             Language](https://developer.lockstep.io/docs/querying-with-searchlight)         pageSize : int             The page size for results (default 200). See [Searchlight             Query Language](https://developer.lockstep.io/docs/querying-with-searchlight)         pageNumber : int             The page number for results (default 0). See [Searchlight             Query Language](https://developer.lockstep.io/docs/querying-with-searchlight) Queries the list of States in the United States using the         specified filtering, sorting, nested fetch, and pagination rules         requested.          More information on querying can be found on the [Searchlight         Query Language](https://developer.lockstep.io/docs/querying-with-searchlight)         page on the Lockstep Developer website. Your app may wish to         make use of a reference list that contains names and codes for         all states in the United States. This information is provided         for the United States since many financial systems require         mailing addresses that use codes for states.          Parameters         ----------         filter : str             The filter for this query. See [Searchlight Query             Language](https://developer.lockstep.io/docs/querying-with-searchlight)         include : str             To fetch additional data on this object, specify the list of             elements to retrieve. No collections are currently             available, but may be offered in the future.         order : str             The sort order for this query. See See [Searchlight Query             Language](https://developer.lockstep.io/docs/querying-with-searchlight)         pageSize : int             The page size for results (default 200). See [Searchlight             Query Language](https://developer.lockstep.io/docs/querying-with-searchlight)         pageNumber : int             The page number for results (default 0). See [Searchlight             Query Language](https://developer.lockstep.io/docs/querying-with-searchlight) Queries a list of financial systems using the specified         filtering, sorting, nested fetch, and pagination rules         requested.          More information on querying can be found on the [Searchlight         Query Language](https://developer.lockstep.io/docs/querying-with-searchlight)         page on the Lockstep Developer website. Lockstep provides a list         of financial systems that may be useful as a selection screen         that allows customers to select from a list. You can query these         items by name or attributes and use this data source to help         users complete a selection.          Parameters         ----------         filter : str             The filter for this query. See [Searchlight Query             Language](https://developer.lockstep.io/docs/querying-with-searchlight)         include : str             To fetch additional data on this object, specify the list of             elements to retrieve. No collections are currently             available, but may be offered in the future.         order : str             The sort order for this query. See See [Searchlight Query             Language](https://developer.lockstep.io/docs/querying-with-searchlight)         pageSize : int             The page size for results (default 200). See [Searchlight             Query Language](https://developer.lockstep.io/docs/querying-with-searchlight)         pageNumber : int             The page number for results (default 0). See [Searchlight             Query Language](https://developer.lockstep.io/docs/querying-with-searchlight)