/** * @namespace proto * @typedef {import("@hashgraph/proto").proto.IGrantedNftAllowance} HashgraphProto.proto.IGrantedNftAllowance * @typedef {import("@hashgraph/proto").proto.INftRemoveAllowance} HashgraphProto.proto.INftRemoveAllowance * @typedef {import("@hashgraph/proto").proto.INftAllowance} HashgraphProto.proto.INftAllowance * @typedef {import("@hashgraph/proto").proto.ITokenID} HashgraphProto.proto.ITokenID * @typedef {import("@hashgraph/proto").proto.IAccountID} HashgraphProto.proto.IAccountID */ /** * @typedef {import("../client/Client.js").default<*, *>} Client */ export default class TokenNftAllowance { /** * @internal * @param {HashgraphProto.proto.INftAllowance} allowance * @returns {TokenNftAllowance} */ static _fromProtobuf(allowance: HashgraphProto.proto.INftAllowance): TokenNftAllowance; /** * @internal * @param {HashgraphProto.proto.IGrantedNftAllowance} allowance * @param {AccountId} ownerAccountId * @returns {TokenNftAllowance} */ static _fromGrantedProtobuf(allowance: HashgraphProto.proto.IGrantedNftAllowance, ownerAccountId: AccountId): TokenNftAllowance; /** * @internal * @param {HashgraphProto.proto.INftRemoveAllowance} allowance * @returns {TokenNftAllowance} */ static _fromRemoveProtobuf(allowance: HashgraphProto.proto.INftRemoveAllowance): TokenNftAllowance; /** * @internal * @param {object} props * @param {TokenId} props.tokenId * @param {AccountId | null} props.spenderAccountId * @param {AccountId | null} props.ownerAccountId * @param {Long[] | null} props.serialNumbers * @param {boolean | null} props.allSerials */ constructor(props: { tokenId: TokenId; spenderAccountId: AccountId | null; ownerAccountId: AccountId | null; serialNumbers: Long[] | null; allSerials: boolean | null; }); /** * The token that the allowance pertains to. * * @readonly */ readonly tokenId: TokenId; /** * The account ID of the spender of the hbar allowance. * * @readonly */ readonly spenderAccountId: AccountId | null; /** * The account ID of the owner of the hbar allowance. * * @readonly */ readonly ownerAccountId: AccountId | null; /** * The current balance of the spender's token allowance. * **NOTE**: If `null`, the spender has access to all of the account owner's NFT instances * (currently owned and any in the future). * * @readonly */ readonly serialNumbers: Long.Long[] | null; /** * @readonly */ readonly allSerials: boolean | null; /** * @internal * @returns {HashgraphProto.proto.INftAllowance} */ _toProtobuf(): HashgraphProto.proto.INftAllowance; /** * @param {Client} client */ _validateChecksums(client: import("../client/Client.js").default): void; } export namespace HashgraphProto { namespace proto { type IGrantedNftAllowance = import("@hashgraph/proto").proto.IGrantedNftAllowance; type INftRemoveAllowance = import("@hashgraph/proto").proto.INftRemoveAllowance; type INftAllowance = import("@hashgraph/proto").proto.INftAllowance; type ITokenID = import("@hashgraph/proto").proto.ITokenID; type IAccountID = import("@hashgraph/proto").proto.IAccountID; } } export type Client = import("../client/Client.js").default; import TokenId from "../token/TokenId.js"; import AccountId from "./AccountId.js"; import Long from "long";