Lists objects pinned to local storage.

        By default, all pinned objects are returned, but the ``type`` flag or
        arguments can restrict that to a specific pin type or to some specific
        objects respectively.

        .. code-block:: python

            >>> c.pin_ls()
            {'Keys': {
                'QmNNPMA1eGUbKxeph6yqV8ZmRkdVat … YMuz': {'Type': 'recursive'},
                'QmNPZUCeSN5458Uwny8mXSWubjjr6J … kP5e': {'Type': 'recursive'},
                'QmNg5zWpRMxzRAVg7FTQ3tUxVbKj8E … gHPz': {'Type': 'indirect'},
                …
                'QmNiuVapnYCrLjxyweHeuk6Xdqfvts … wCCe': {'Type': 'indirect'}}}

        Parameters
        ----------
        type : "str"
            The type of pinned keys to list. Can be:

             * ``"direct"``
             * ``"indirect"``
             * ``"recursive"``
             * ``"all"``

        Returns
        -------
            dict : Hashes of pinned IPFS objects and why they are pinned

def pin_ls(self, type="all", **kwargs):
        """Lists objects pinned to local storage.

        By default, all pinned objects are returned, but the ``type`` flag or
        arguments can restrict that to a specific pin type or to some specific
        objects respectively.

        .. code-block:: python

            >>> c.pin_ls()
            {'Keys': {
                'QmNNPMA1eGUbKxeph6yqV8ZmRkdVat … YMuz': {'Type': 'recursive'},
                'QmNPZUCeSN5458Uwny8mXSWubjjr6J … kP5e': {'Type': 'recursive'},
                'QmNg5zWpRMxzRAVg7FTQ3tUxVbKj8E … gHPz': {'Type': 'indirect'},
                …
                'QmNiuVapnYCrLjxyweHeuk6Xdqfvts … wCCe': {'Type': 'indirect'}}}

        Parameters
        ----------
        type : "str"
            The type of pinned keys to list. Can be:

             * ``"direct"``
             * ``"indirect"``
             * ``"recursive"``
             * ``"all"``

        Returns
        -------
            dict : Hashes of pinned IPFS objects and why they are pinned
        """
        kwargs.setdefault("opts", {"type": type})

        return self._client.request('/pin/ls', decoder='json', **kwargs)