interchainjs
Version:
InterchainJS is a JavaScript library for interacting with Cosmos SDK based blockchains.
95 lines (94 loc) • 3.27 kB
JavaScript
import { buildQuery } from "../../../helper-func-types";
import { QueryBalanceRequest, QueryBalanceResponse, QueryOwnerRequest, QueryOwnerResponse, QuerySupplyRequest, QuerySupplyResponse, QueryNFTsRequest, QueryNFTsResponse, QueryNFTRequest, QueryNFTResponse, QueryClassRequest, QueryClassResponse, QueryClassesRequest, QueryClassesResponse } from "./query";
/**
* Balance queries the number of NFTs of a given class owned by the owner, same as balanceOf in ERC721
* @name getBalance
* @package cosmos.nft.v1beta1
* @see proto service: cosmos.nft.v1beta1.Balance
*/
export const getBalance = buildQuery({
encode: QueryBalanceRequest.encode,
decode: QueryBalanceResponse.decode,
service: "cosmos.nft.v1beta1.Query",
method: "Balance",
deps: [QueryBalanceRequest, QueryBalanceResponse]
});
/**
* Owner queries the owner of the NFT based on its class and id, same as ownerOf in ERC721
* @name getOwner
* @package cosmos.nft.v1beta1
* @see proto service: cosmos.nft.v1beta1.Owner
*/
export const getOwner = buildQuery({
encode: QueryOwnerRequest.encode,
decode: QueryOwnerResponse.decode,
service: "cosmos.nft.v1beta1.Query",
method: "Owner",
deps: [QueryOwnerRequest, QueryOwnerResponse]
});
/**
* Supply queries the number of NFTs from the given class, same as totalSupply of ERC721.
* @name getSupply
* @package cosmos.nft.v1beta1
* @see proto service: cosmos.nft.v1beta1.Supply
*/
export const getSupply = buildQuery({
encode: QuerySupplyRequest.encode,
decode: QuerySupplyResponse.decode,
service: "cosmos.nft.v1beta1.Query",
method: "Supply",
deps: [QuerySupplyRequest, QuerySupplyResponse]
});
/**
* NFTs queries all NFTs of a given class or owner,choose at least one of the two, similar to tokenByIndex in
* ERC721Enumerable
* @name getNFTs
* @package cosmos.nft.v1beta1
* @see proto service: cosmos.nft.v1beta1.NFTs
*/
export const getNFTs = buildQuery({
encode: QueryNFTsRequest.encode,
decode: QueryNFTsResponse.decode,
service: "cosmos.nft.v1beta1.Query",
method: "NFTs",
deps: [QueryNFTsRequest, QueryNFTsResponse]
});
/**
* NFT queries an NFT based on its class and id.
* @name getNFT
* @package cosmos.nft.v1beta1
* @see proto service: cosmos.nft.v1beta1.NFT
*/
export const getNFT = buildQuery({
encode: QueryNFTRequest.encode,
decode: QueryNFTResponse.decode,
service: "cosmos.nft.v1beta1.Query",
method: "NFT",
deps: [QueryNFTRequest, QueryNFTResponse]
});
/**
* Class queries an NFT class based on its id
* @name getClass
* @package cosmos.nft.v1beta1
* @see proto service: cosmos.nft.v1beta1.Class
*/
export const getClass = buildQuery({
encode: QueryClassRequest.encode,
decode: QueryClassResponse.decode,
service: "cosmos.nft.v1beta1.Query",
method: "Class",
deps: [QueryClassRequest, QueryClassResponse]
});
/**
* Classes queries all NFT classes
* @name getClasses
* @package cosmos.nft.v1beta1
* @see proto service: cosmos.nft.v1beta1.Classes
*/
export const getClasses = buildQuery({
encode: QueryClassesRequest.encode,
decode: QueryClassesResponse.decode,
service: "cosmos.nft.v1beta1.Query",
method: "Classes",
deps: [QueryClassesRequest, QueryClassesResponse]
});