export { constants } from '@unique-nft/utils'; import { DeferredTopicFilter, EventFragment, EventLog, ContractTransactionResponse, FunctionFragment, ContractTransaction, LogDescription, Typed, TransactionRequest, BaseContract, ContractRunner, Listener, BigNumberish, AddressLike, BytesLike, ContractMethod, Interface, Result, ContractTransactionReceipt, ethers, Signer } from 'ethers'; interface TypedDeferredTopicFilter<_TCEvent extends TypedContractEvent> extends DeferredTopicFilter { } interface TypedContractEvent = any, OutputTuple extends Array = any, OutputObject = any> { (...args: Partial): TypedDeferredTopicFilter>; name: string; fragment: EventFragment; getFragment(...args: Partial): EventFragment; } type __TypechainAOutputTuple = T extends TypedContractEvent ? W : never; type __TypechainOutputObject = T extends TypedContractEvent ? V : never; interface TypedEventLog extends Omit { args: __TypechainAOutputTuple & __TypechainOutputObject; } interface TypedLogDescription extends Omit { args: __TypechainAOutputTuple & __TypechainOutputObject; } type TypedListener = (...listenerArg: [ ...__TypechainAOutputTuple, TypedEventLog, ...undefined[] ]) => void; type StateMutability = "nonpayable" | "payable" | "view"; type BaseOverrides = Omit; type NonPayableOverrides = Omit; type PayableOverrides = Omit; type ViewOverrides = Omit; type Overrides = S extends "nonpayable" ? NonPayableOverrides : S extends "payable" ? PayableOverrides : ViewOverrides; type PostfixOverrides, S extends StateMutability> = A | [...A, Overrides]; type ContractMethodArgs, S extends StateMutability> = PostfixOverrides<{ [I in keyof A]-?: A[I] | Typed; }, S>; type DefaultReturnType = R extends Array ? R[0] : R; interface TypedContractMethod = Array, R = any, S extends StateMutability = "payable"> { (...args: ContractMethodArgs): S extends "view" ? Promise> : Promise; name: string; fragment: FunctionFragment; getFragment(...args: ContractMethodArgs): FunctionFragment; populateTransaction(...args: ContractMethodArgs): Promise; staticCall(...args: ContractMethodArgs): Promise>; send(...args: ContractMethodArgs): Promise; estimateGas(...args: ContractMethodArgs): Promise; staticCallResult(...args: ContractMethodArgs): Promise; } type PropertyStruct$3 = { key: string; value: BytesLike; }; type PropertyPermissionStruct$2 = { code: BigNumberish; value: boolean; }; type TokenPropertyPermissionStruct$2 = { key: string; permissions: PropertyPermissionStruct$2[]; }; type CrossAddressStruct$4 = { eth: AddressLike; sub: BigNumberish; }; type CollectionNestingAndPermissionStruct$3 = { token_owner: boolean; collection_admin: boolean; restricted: AddressLike[]; }; type CollectionLimitValueStruct = { field: BigNumberish; value: BigNumberish; }; type CreateCollectionDataStruct = { name: string; description: string; token_prefix: string; mode: BigNumberish; decimals: BigNumberish; properties: PropertyStruct$3[]; token_property_permissions: TokenPropertyPermissionStruct$2[]; admin_list: CrossAddressStruct$4[]; nesting_settings: CollectionNestingAndPermissionStruct$3; limits: CollectionLimitValueStruct[]; pending_sponsor: CrossAddressStruct$4; flags: BigNumberish; }; interface CollectionHelpersInterface extends Interface { getFunction(nameOrSignature: "collectionAddress" | "collectionCreationFee" | "collectionId" | "createCollection" | "createFTCollection" | "createNFTCollection" | "createRFTCollection" | "destroyCollection" | "isCollectionExist" | "makeCollectionERC721MetadataCompatible" | "supportsInterface"): FunctionFragment; getEvent(nameOrSignatureOrTopic: "CollectionChanged" | "CollectionCreated" | "CollectionDestroyed"): EventFragment; encodeFunctionData(functionFragment: "collectionAddress", values: [BigNumberish]): string; encodeFunctionData(functionFragment: "collectionCreationFee", values?: undefined): string; encodeFunctionData(functionFragment: "collectionId", values: [AddressLike]): string; encodeFunctionData(functionFragment: "createCollection", values: [CreateCollectionDataStruct]): string; encodeFunctionData(functionFragment: "createFTCollection", values: [string, BigNumberish, string, string]): string; encodeFunctionData(functionFragment: "createNFTCollection", values: [string, string, string]): string; encodeFunctionData(functionFragment: "createRFTCollection", values: [string, string, string]): string; encodeFunctionData(functionFragment: "destroyCollection", values: [AddressLike]): string; encodeFunctionData(functionFragment: "isCollectionExist", values: [AddressLike]): string; encodeFunctionData(functionFragment: "makeCollectionERC721MetadataCompatible", values: [AddressLike, string]): string; encodeFunctionData(functionFragment: "supportsInterface", values: [BytesLike]): string; decodeFunctionResult(functionFragment: "collectionAddress", data: BytesLike): Result; decodeFunctionResult(functionFragment: "collectionCreationFee", data: BytesLike): Result; decodeFunctionResult(functionFragment: "collectionId", data: BytesLike): Result; decodeFunctionResult(functionFragment: "createCollection", data: BytesLike): Result; decodeFunctionResult(functionFragment: "createFTCollection", data: BytesLike): Result; decodeFunctionResult(functionFragment: "createNFTCollection", data: BytesLike): Result; decodeFunctionResult(functionFragment: "createRFTCollection", data: BytesLike): Result; decodeFunctionResult(functionFragment: "destroyCollection", data: BytesLike): Result; decodeFunctionResult(functionFragment: "isCollectionExist", data: BytesLike): Result; decodeFunctionResult(functionFragment: "makeCollectionERC721MetadataCompatible", data: BytesLike): Result; decodeFunctionResult(functionFragment: "supportsInterface", data: BytesLike): Result; } declare namespace CollectionChangedEvent { type InputTuple = [collectionId: AddressLike]; type OutputTuple = [collectionId: string]; interface OutputObject { collectionId: string; } type Event = TypedContractEvent; type Filter = TypedDeferredTopicFilter; type Log = TypedEventLog; type LogDescription = TypedLogDescription; } declare namespace CollectionCreatedEvent { type InputTuple = [owner: AddressLike, collectionId: AddressLike]; type OutputTuple = [owner: string, collectionId: string]; interface OutputObject { owner: string; collectionId: string; } type Event = TypedContractEvent; type Filter = TypedDeferredTopicFilter; type Log = TypedEventLog; type LogDescription = TypedLogDescription; } declare namespace CollectionDestroyedEvent { type InputTuple = [collectionId: AddressLike]; type OutputTuple = [collectionId: string]; interface OutputObject { collectionId: string; } type Event = TypedContractEvent; type Filter = TypedDeferredTopicFilter; type Log = TypedEventLog; type LogDescription = TypedLogDescription; } interface CollectionHelpers extends BaseContract { connect(runner?: ContractRunner | null): CollectionHelpers; waitForDeployment(): Promise; interface: CollectionHelpersInterface; queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; on(event: TCEvent, listener: TypedListener): Promise; on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; once(event: TCEvent, listener: TypedListener): Promise; once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; listeners(event: TCEvent): Promise>>; listeners(eventName?: string): Promise>; removeAllListeners(event?: TCEvent): Promise; collectionAddress: TypedContractMethod<[ collectionId: BigNumberish ], [ string ], "view">; collectionCreationFee: TypedContractMethod<[], [bigint], "view">; collectionId: TypedContractMethod<[ collectionAddress: AddressLike ], [ bigint ], "view">; createCollection: TypedContractMethod<[ data: CreateCollectionDataStruct ], [ string ], "payable">; createFTCollection: TypedContractMethod<[ name: string, decimals: BigNumberish, description: string, tokenPrefix: string ], [ string ], "payable">; createNFTCollection: TypedContractMethod<[ name: string, description: string, tokenPrefix: string ], [ string ], "payable">; createRFTCollection: TypedContractMethod<[ name: string, description: string, tokenPrefix: string ], [ string ], "payable">; destroyCollection: TypedContractMethod<[ collectionAddress: AddressLike ], [ void ], "nonpayable">; isCollectionExist: TypedContractMethod<[ collectionAddress: AddressLike ], [ boolean ], "view">; makeCollectionERC721MetadataCompatible: TypedContractMethod<[ collection: AddressLike, baseUri: string ], [ void ], "nonpayable">; supportsInterface: TypedContractMethod<[ interfaceID: BytesLike ], [ boolean ], "view">; getFunction(key: string | FunctionFragment): T; getFunction(nameOrSignature: "collectionAddress"): TypedContractMethod<[collectionId: BigNumberish], [string], "view">; getFunction(nameOrSignature: "collectionCreationFee"): TypedContractMethod<[], [bigint], "view">; getFunction(nameOrSignature: "collectionId"): TypedContractMethod<[collectionAddress: AddressLike], [bigint], "view">; getFunction(nameOrSignature: "createCollection"): TypedContractMethod<[ data: CreateCollectionDataStruct ], [ string ], "payable">; getFunction(nameOrSignature: "createFTCollection"): TypedContractMethod<[ name: string, decimals: BigNumberish, description: string, tokenPrefix: string ], [ string ], "payable">; getFunction(nameOrSignature: "createNFTCollection"): TypedContractMethod<[ name: string, description: string, tokenPrefix: string ], [ string ], "payable">; getFunction(nameOrSignature: "createRFTCollection"): TypedContractMethod<[ name: string, description: string, tokenPrefix: string ], [ string ], "payable">; getFunction(nameOrSignature: "destroyCollection"): TypedContractMethod<[ collectionAddress: AddressLike ], [ void ], "nonpayable">; getFunction(nameOrSignature: "isCollectionExist"): TypedContractMethod<[collectionAddress: AddressLike], [boolean], "view">; getFunction(nameOrSignature: "makeCollectionERC721MetadataCompatible"): TypedContractMethod<[ collection: AddressLike, baseUri: string ], [ void ], "nonpayable">; getFunction(nameOrSignature: "supportsInterface"): TypedContractMethod<[interfaceID: BytesLike], [boolean], "view">; getEvent(key: "CollectionChanged"): TypedContractEvent; getEvent(key: "CollectionCreated"): TypedContractEvent; getEvent(key: "CollectionDestroyed"): TypedContractEvent; filters: { "CollectionChanged(address)": TypedContractEvent; CollectionChanged: TypedContractEvent; "CollectionCreated(address,address)": TypedContractEvent; CollectionCreated: TypedContractEvent; "CollectionDestroyed(address)": TypedContractEvent; CollectionDestroyed: TypedContractEvent; }; } type CrossAddressStructOutput$3 = [eth: string, sub: bigint] & { eth: string; sub: bigint; }; type OptionCrossAddressStructOutput = [ status: boolean, value: CrossAddressStructOutput$3 ] & { status: boolean; value: CrossAddressStructOutput$3; }; interface ContractHelpersInterface extends Interface { getFunction(nameOrSignature: "allowed" | "allowlistEnabled" | "confirmSponsorship" | "contractOwner" | "hasPendingSponsor" | "hasSponsor" | "removeSponsor" | "selfSponsoredEnable" | "setSponsor" | "setSponsoringFeeLimit" | "setSponsoringMode" | "setSponsoringRateLimit" | "sponsor" | "sponsoringEnabled" | "sponsoringFeeLimit" | "sponsoringRateLimit" | "supportsInterface" | "toggleAllowed" | "toggleAllowlist"): FunctionFragment; getEvent(nameOrSignatureOrTopic: "ContractSponsorRemoved" | "ContractSponsorSet" | "ContractSponsorshipConfirmed"): EventFragment; encodeFunctionData(functionFragment: "allowed", values: [AddressLike, AddressLike]): string; encodeFunctionData(functionFragment: "allowlistEnabled", values: [AddressLike]): string; encodeFunctionData(functionFragment: "confirmSponsorship", values: [AddressLike]): string; encodeFunctionData(functionFragment: "contractOwner", values: [AddressLike]): string; encodeFunctionData(functionFragment: "hasPendingSponsor", values: [AddressLike]): string; encodeFunctionData(functionFragment: "hasSponsor", values: [AddressLike]): string; encodeFunctionData(functionFragment: "removeSponsor", values: [AddressLike]): string; encodeFunctionData(functionFragment: "selfSponsoredEnable", values: [AddressLike]): string; encodeFunctionData(functionFragment: "setSponsor", values: [AddressLike, AddressLike]): string; encodeFunctionData(functionFragment: "setSponsoringFeeLimit", values: [AddressLike, BigNumberish]): string; encodeFunctionData(functionFragment: "setSponsoringMode", values: [AddressLike, BigNumberish]): string; encodeFunctionData(functionFragment: "setSponsoringRateLimit", values: [AddressLike, BigNumberish]): string; encodeFunctionData(functionFragment: "sponsor", values: [AddressLike]): string; encodeFunctionData(functionFragment: "sponsoringEnabled", values: [AddressLike]): string; encodeFunctionData(functionFragment: "sponsoringFeeLimit", values: [AddressLike]): string; encodeFunctionData(functionFragment: "sponsoringRateLimit", values: [AddressLike]): string; encodeFunctionData(functionFragment: "supportsInterface", values: [BytesLike]): string; encodeFunctionData(functionFragment: "toggleAllowed", values: [AddressLike, AddressLike, boolean]): string; encodeFunctionData(functionFragment: "toggleAllowlist", values: [AddressLike, boolean]): string; decodeFunctionResult(functionFragment: "allowed", data: BytesLike): Result; decodeFunctionResult(functionFragment: "allowlistEnabled", data: BytesLike): Result; decodeFunctionResult(functionFragment: "confirmSponsorship", data: BytesLike): Result; decodeFunctionResult(functionFragment: "contractOwner", data: BytesLike): Result; decodeFunctionResult(functionFragment: "hasPendingSponsor", data: BytesLike): Result; decodeFunctionResult(functionFragment: "hasSponsor", data: BytesLike): Result; decodeFunctionResult(functionFragment: "removeSponsor", data: BytesLike): Result; decodeFunctionResult(functionFragment: "selfSponsoredEnable", data: BytesLike): Result; decodeFunctionResult(functionFragment: "setSponsor", data: BytesLike): Result; decodeFunctionResult(functionFragment: "setSponsoringFeeLimit", data: BytesLike): Result; decodeFunctionResult(functionFragment: "setSponsoringMode", data: BytesLike): Result; decodeFunctionResult(functionFragment: "setSponsoringRateLimit", data: BytesLike): Result; decodeFunctionResult(functionFragment: "sponsor", data: BytesLike): Result; decodeFunctionResult(functionFragment: "sponsoringEnabled", data: BytesLike): Result; decodeFunctionResult(functionFragment: "sponsoringFeeLimit", data: BytesLike): Result; decodeFunctionResult(functionFragment: "sponsoringRateLimit", data: BytesLike): Result; decodeFunctionResult(functionFragment: "supportsInterface", data: BytesLike): Result; decodeFunctionResult(functionFragment: "toggleAllowed", data: BytesLike): Result; decodeFunctionResult(functionFragment: "toggleAllowlist", data: BytesLike): Result; } declare namespace ContractSponsorRemovedEvent { type InputTuple = [contractAddress: AddressLike]; type OutputTuple = [contractAddress: string]; interface OutputObject { contractAddress: string; } type Event = TypedContractEvent; type Filter = TypedDeferredTopicFilter; type Log = TypedEventLog; type LogDescription = TypedLogDescription; } declare namespace ContractSponsorSetEvent { type InputTuple = [contractAddress: AddressLike, sponsor: AddressLike]; type OutputTuple = [contractAddress: string, sponsor: string]; interface OutputObject { contractAddress: string; sponsor: string; } type Event = TypedContractEvent; type Filter = TypedDeferredTopicFilter; type Log = TypedEventLog; type LogDescription = TypedLogDescription; } declare namespace ContractSponsorshipConfirmedEvent { type InputTuple = [contractAddress: AddressLike, sponsor: AddressLike]; type OutputTuple = [contractAddress: string, sponsor: string]; interface OutputObject { contractAddress: string; sponsor: string; } type Event = TypedContractEvent; type Filter = TypedDeferredTopicFilter; type Log = TypedEventLog; type LogDescription = TypedLogDescription; } interface ContractHelpers extends BaseContract { connect(runner?: ContractRunner | null): ContractHelpers; waitForDeployment(): Promise; interface: ContractHelpersInterface; queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; on(event: TCEvent, listener: TypedListener): Promise; on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; once(event: TCEvent, listener: TypedListener): Promise; once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; listeners(event: TCEvent): Promise>>; listeners(eventName?: string): Promise>; removeAllListeners(event?: TCEvent): Promise; allowed: TypedContractMethod<[ contractAddress: AddressLike, user: AddressLike ], [ boolean ], "view">; allowlistEnabled: TypedContractMethod<[ contractAddress: AddressLike ], [ boolean ], "view">; confirmSponsorship: TypedContractMethod<[ contractAddress: AddressLike ], [ void ], "nonpayable">; contractOwner: TypedContractMethod<[ contractAddress: AddressLike ], [ string ], "view">; hasPendingSponsor: TypedContractMethod<[ contractAddress: AddressLike ], [ boolean ], "view">; hasSponsor: TypedContractMethod<[ contractAddress: AddressLike ], [ boolean ], "view">; removeSponsor: TypedContractMethod<[ contractAddress: AddressLike ], [ void ], "nonpayable">; selfSponsoredEnable: TypedContractMethod<[ contractAddress: AddressLike ], [ void ], "nonpayable">; setSponsor: TypedContractMethod<[ contractAddress: AddressLike, sponsor: AddressLike ], [ void ], "nonpayable">; setSponsoringFeeLimit: TypedContractMethod<[ contractAddress: AddressLike, feeLimit: BigNumberish ], [ void ], "nonpayable">; setSponsoringMode: TypedContractMethod<[ contractAddress: AddressLike, mode: BigNumberish ], [ void ], "nonpayable">; setSponsoringRateLimit: TypedContractMethod<[ contractAddress: AddressLike, rateLimit: BigNumberish ], [ void ], "nonpayable">; sponsor: TypedContractMethod<[ contractAddress: AddressLike ], [ OptionCrossAddressStructOutput ], "view">; sponsoringEnabled: TypedContractMethod<[ contractAddress: AddressLike ], [ boolean ], "view">; sponsoringFeeLimit: TypedContractMethod<[ contractAddress: AddressLike ], [ bigint ], "view">; sponsoringRateLimit: TypedContractMethod<[ contractAddress: AddressLike ], [ bigint ], "view">; supportsInterface: TypedContractMethod<[ interfaceID: BytesLike ], [ boolean ], "view">; toggleAllowed: TypedContractMethod<[ contractAddress: AddressLike, user: AddressLike, isAllowed: boolean ], [ void ], "nonpayable">; toggleAllowlist: TypedContractMethod<[ contractAddress: AddressLike, enabled: boolean ], [ void ], "nonpayable">; getFunction(key: string | FunctionFragment): T; getFunction(nameOrSignature: "allowed"): TypedContractMethod<[ contractAddress: AddressLike, user: AddressLike ], [ boolean ], "view">; getFunction(nameOrSignature: "allowlistEnabled"): TypedContractMethod<[contractAddress: AddressLike], [boolean], "view">; getFunction(nameOrSignature: "confirmSponsorship"): TypedContractMethod<[contractAddress: AddressLike], [void], "nonpayable">; getFunction(nameOrSignature: "contractOwner"): TypedContractMethod<[contractAddress: AddressLike], [string], "view">; getFunction(nameOrSignature: "hasPendingSponsor"): TypedContractMethod<[contractAddress: AddressLike], [boolean], "view">; getFunction(nameOrSignature: "hasSponsor"): TypedContractMethod<[contractAddress: AddressLike], [boolean], "view">; getFunction(nameOrSignature: "removeSponsor"): TypedContractMethod<[contractAddress: AddressLike], [void], "nonpayable">; getFunction(nameOrSignature: "selfSponsoredEnable"): TypedContractMethod<[contractAddress: AddressLike], [void], "nonpayable">; getFunction(nameOrSignature: "setSponsor"): TypedContractMethod<[ contractAddress: AddressLike, sponsor: AddressLike ], [ void ], "nonpayable">; getFunction(nameOrSignature: "setSponsoringFeeLimit"): TypedContractMethod<[ contractAddress: AddressLike, feeLimit: BigNumberish ], [ void ], "nonpayable">; getFunction(nameOrSignature: "setSponsoringMode"): TypedContractMethod<[ contractAddress: AddressLike, mode: BigNumberish ], [ void ], "nonpayable">; getFunction(nameOrSignature: "setSponsoringRateLimit"): TypedContractMethod<[ contractAddress: AddressLike, rateLimit: BigNumberish ], [ void ], "nonpayable">; getFunction(nameOrSignature: "sponsor"): TypedContractMethod<[ contractAddress: AddressLike ], [ OptionCrossAddressStructOutput ], "view">; getFunction(nameOrSignature: "sponsoringEnabled"): TypedContractMethod<[contractAddress: AddressLike], [boolean], "view">; getFunction(nameOrSignature: "sponsoringFeeLimit"): TypedContractMethod<[contractAddress: AddressLike], [bigint], "view">; getFunction(nameOrSignature: "sponsoringRateLimit"): TypedContractMethod<[contractAddress: AddressLike], [bigint], "view">; getFunction(nameOrSignature: "supportsInterface"): TypedContractMethod<[interfaceID: BytesLike], [boolean], "view">; getFunction(nameOrSignature: "toggleAllowed"): TypedContractMethod<[ contractAddress: AddressLike, user: AddressLike, isAllowed: boolean ], [ void ], "nonpayable">; getFunction(nameOrSignature: "toggleAllowlist"): TypedContractMethod<[ contractAddress: AddressLike, enabled: boolean ], [ void ], "nonpayable">; getEvent(key: "ContractSponsorRemoved"): TypedContractEvent; getEvent(key: "ContractSponsorSet"): TypedContractEvent; getEvent(key: "ContractSponsorshipConfirmed"): TypedContractEvent; filters: { "ContractSponsorRemoved(address)": TypedContractEvent; ContractSponsorRemoved: TypedContractEvent; "ContractSponsorSet(address,address)": TypedContractEvent; ContractSponsorSet: TypedContractEvent; "ContractSponsorshipConfirmed(address,address)": TypedContractEvent; ContractSponsorshipConfirmed: TypedContractEvent; }; } type CrossAddressStruct$3 = { eth: AddressLike; sub: BigNumberish; }; type CrossAddressStructOutput$2 = [eth: string, sub: bigint] & { eth: string; sub: bigint; }; type OptionUint256Struct$2 = { status: boolean; value: BigNumberish; }; type OptionUint256StructOutput$2 = [status: boolean, value: bigint] & { status: boolean; value: bigint; }; type CollectionLimitStruct$2 = { field: BigNumberish; value: OptionUint256Struct$2; }; type CollectionLimitStructOutput$2 = [ field: bigint, value: OptionUint256StructOutput$2 ] & { field: bigint; value: OptionUint256StructOutput$2; }; type CollectionNestingAndPermissionStruct$2 = { token_owner: boolean; collection_admin: boolean; restricted: AddressLike[]; }; type CollectionNestingAndPermissionStructOutput$2 = [ token_owner: boolean, collection_admin: boolean, restricted: string[] ] & { token_owner: boolean; collection_admin: boolean; restricted: string[]; }; type PropertyStruct$2 = { key: string; value: BytesLike; }; type PropertyStructOutput$2 = [key: string, value: string] & { key: string; value: string; }; type AmountForAddressStruct = { to: AddressLike; amount: BigNumberish; }; interface UniqueFungibleInterface extends Interface { getFunction(nameOrSignature: "addCollectionAdminCross" | "addToCollectionAllowListCross" | "allowance" | "allowanceCross" | "allowlistedCross" | "approve" | "approveCross" | "balanceOf" | "balanceOfCross" | "burnFromCross" | "changeCollectionOwnerCross" | "collectionAdmins" | "collectionHelperAddress" | "collectionLimits" | "collectionNesting" | "collectionOwner" | "collectionProperties" | "collectionProperty" | "collectionSponsor" | "confirmCollectionSponsorship" | "contractAddress" | "decimals" | "deleteCollectionProperties" | "description" | "hasCollectionPendingSponsor" | "isOwnerOrAdminCross" | "mint" | "mintBulk" | "mintCross" | "name" | "removeCollectionAdminCross" | "removeCollectionSponsor" | "removeFromCollectionAllowListCross" | "setCollectionAccess" | "setCollectionLimit" | "setCollectionMintMode" | "setCollectionNesting" | "setCollectionProperties" | "setCollectionSponsorCross" | "supportsInterface" | "symbol" | "totalSupply" | "transfer" | "transferCross" | "transferFrom" | "transferFromCross" | "uniqueCollectionType"): FunctionFragment; getEvent(nameOrSignatureOrTopic: "Approval" | "Transfer"): EventFragment; encodeFunctionData(functionFragment: "addCollectionAdminCross", values: [CrossAddressStruct$3]): string; encodeFunctionData(functionFragment: "addToCollectionAllowListCross", values: [CrossAddressStruct$3]): string; encodeFunctionData(functionFragment: "allowance", values: [AddressLike, AddressLike]): string; encodeFunctionData(functionFragment: "allowanceCross", values: [CrossAddressStruct$3, CrossAddressStruct$3]): string; encodeFunctionData(functionFragment: "allowlistedCross", values: [CrossAddressStruct$3]): string; encodeFunctionData(functionFragment: "approve", values: [AddressLike, BigNumberish]): string; encodeFunctionData(functionFragment: "approveCross", values: [CrossAddressStruct$3, BigNumberish]): string; encodeFunctionData(functionFragment: "balanceOf", values: [AddressLike]): string; encodeFunctionData(functionFragment: "balanceOfCross", values: [CrossAddressStruct$3]): string; encodeFunctionData(functionFragment: "burnFromCross", values: [CrossAddressStruct$3, BigNumberish]): string; encodeFunctionData(functionFragment: "changeCollectionOwnerCross", values: [CrossAddressStruct$3]): string; encodeFunctionData(functionFragment: "collectionAdmins", values?: undefined): string; encodeFunctionData(functionFragment: "collectionHelperAddress", values?: undefined): string; encodeFunctionData(functionFragment: "collectionLimits", values?: undefined): string; encodeFunctionData(functionFragment: "collectionNesting", values?: undefined): string; encodeFunctionData(functionFragment: "collectionOwner", values?: undefined): string; encodeFunctionData(functionFragment: "collectionProperties", values: [string[]]): string; encodeFunctionData(functionFragment: "collectionProperty", values: [string]): string; encodeFunctionData(functionFragment: "collectionSponsor", values?: undefined): string; encodeFunctionData(functionFragment: "confirmCollectionSponsorship", values?: undefined): string; encodeFunctionData(functionFragment: "contractAddress", values?: undefined): string; encodeFunctionData(functionFragment: "decimals", values?: undefined): string; encodeFunctionData(functionFragment: "deleteCollectionProperties", values: [string[]]): string; encodeFunctionData(functionFragment: "description", values?: undefined): string; encodeFunctionData(functionFragment: "hasCollectionPendingSponsor", values?: undefined): string; encodeFunctionData(functionFragment: "isOwnerOrAdminCross", values: [CrossAddressStruct$3]): string; encodeFunctionData(functionFragment: "mint", values: [AddressLike, BigNumberish]): string; encodeFunctionData(functionFragment: "mintBulk", values: [AmountForAddressStruct[]]): string; encodeFunctionData(functionFragment: "mintCross", values: [CrossAddressStruct$3, BigNumberish]): string; encodeFunctionData(functionFragment: "name", values?: undefined): string; encodeFunctionData(functionFragment: "removeCollectionAdminCross", values: [CrossAddressStruct$3]): string; encodeFunctionData(functionFragment: "removeCollectionSponsor", values?: undefined): string; encodeFunctionData(functionFragment: "removeFromCollectionAllowListCross", values: [CrossAddressStruct$3]): string; encodeFunctionData(functionFragment: "setCollectionAccess", values: [BigNumberish]): string; encodeFunctionData(functionFragment: "setCollectionLimit", values: [CollectionLimitStruct$2]): string; encodeFunctionData(functionFragment: "setCollectionMintMode", values: [boolean]): string; encodeFunctionData(functionFragment: "setCollectionNesting", values: [CollectionNestingAndPermissionStruct$2]): string; encodeFunctionData(functionFragment: "setCollectionProperties", values: [PropertyStruct$2[]]): string; encodeFunctionData(functionFragment: "setCollectionSponsorCross", values: [CrossAddressStruct$3]): string; encodeFunctionData(functionFragment: "supportsInterface", values: [BytesLike]): string; encodeFunctionData(functionFragment: "symbol", values?: undefined): string; encodeFunctionData(functionFragment: "totalSupply", values?: undefined): string; encodeFunctionData(functionFragment: "transfer", values: [AddressLike, BigNumberish]): string; encodeFunctionData(functionFragment: "transferCross", values: [CrossAddressStruct$3, BigNumberish]): string; encodeFunctionData(functionFragment: "transferFrom", values: [AddressLike, AddressLike, BigNumberish]): string; encodeFunctionData(functionFragment: "transferFromCross", values: [CrossAddressStruct$3, CrossAddressStruct$3, BigNumberish]): string; encodeFunctionData(functionFragment: "uniqueCollectionType", values?: undefined): string; decodeFunctionResult(functionFragment: "addCollectionAdminCross", data: BytesLike): Result; decodeFunctionResult(functionFragment: "addToCollectionAllowListCross", data: BytesLike): Result; decodeFunctionResult(functionFragment: "allowance", data: BytesLike): Result; decodeFunctionResult(functionFragment: "allowanceCross", data: BytesLike): Result; decodeFunctionResult(functionFragment: "allowlistedCross", data: BytesLike): Result; decodeFunctionResult(functionFragment: "approve", data: BytesLike): Result; decodeFunctionResult(functionFragment: "approveCross", data: BytesLike): Result; decodeFunctionResult(functionFragment: "balanceOf", data: BytesLike): Result; decodeFunctionResult(functionFragment: "balanceOfCross", data: BytesLike): Result; decodeFunctionResult(functionFragment: "burnFromCross", data: BytesLike): Result; decodeFunctionResult(functionFragment: "changeCollectionOwnerCross", data: BytesLike): Result; decodeFunctionResult(functionFragment: "collectionAdmins", data: BytesLike): Result; decodeFunctionResult(functionFragment: "collectionHelperAddress", data: BytesLike): Result; decodeFunctionResult(functionFragment: "collectionLimits", data: BytesLike): Result; decodeFunctionResult(functionFragment: "collectionNesting", data: BytesLike): Result; decodeFunctionResult(functionFragment: "collectionOwner", data: BytesLike): Result; decodeFunctionResult(functionFragment: "collectionProperties", data: BytesLike): Result; decodeFunctionResult(functionFragment: "collectionProperty", data: BytesLike): Result; decodeFunctionResult(functionFragment: "collectionSponsor", data: BytesLike): Result; decodeFunctionResult(functionFragment: "confirmCollectionSponsorship", data: BytesLike): Result; decodeFunctionResult(functionFragment: "contractAddress", data: BytesLike): Result; decodeFunctionResult(functionFragment: "decimals", data: BytesLike): Result; decodeFunctionResult(functionFragment: "deleteCollectionProperties", data: BytesLike): Result; decodeFunctionResult(functionFragment: "description", data: BytesLike): Result; decodeFunctionResult(functionFragment: "hasCollectionPendingSponsor", data: BytesLike): Result; decodeFunctionResult(functionFragment: "isOwnerOrAdminCross", data: BytesLike): Result; decodeFunctionResult(functionFragment: "mint", data: BytesLike): Result; decodeFunctionResult(functionFragment: "mintBulk", data: BytesLike): Result; decodeFunctionResult(functionFragment: "mintCross", data: BytesLike): Result; decodeFunctionResult(functionFragment: "name", data: BytesLike): Result; decodeFunctionResult(functionFragment: "removeCollectionAdminCross", data: BytesLike): Result; decodeFunctionResult(functionFragment: "removeCollectionSponsor", data: BytesLike): Result; decodeFunctionResult(functionFragment: "removeFromCollectionAllowListCross", data: BytesLike): Result; decodeFunctionResult(functionFragment: "setCollectionAccess", data: BytesLike): Result; decodeFunctionResult(functionFragment: "setCollectionLimit", data: BytesLike): Result; decodeFunctionResult(functionFragment: "setCollectionMintMode", data: BytesLike): Result; decodeFunctionResult(functionFragment: "setCollectionNesting", data: BytesLike): Result; decodeFunctionResult(functionFragment: "setCollectionProperties", data: BytesLike): Result; decodeFunctionResult(functionFragment: "setCollectionSponsorCross", data: BytesLike): Result; decodeFunctionResult(functionFragment: "supportsInterface", data: BytesLike): Result; decodeFunctionResult(functionFragment: "symbol", data: BytesLike): Result; decodeFunctionResult(functionFragment: "totalSupply", data: BytesLike): Result; decodeFunctionResult(functionFragment: "transfer", data: BytesLike): Result; decodeFunctionResult(functionFragment: "transferCross", data: BytesLike): Result; decodeFunctionResult(functionFragment: "transferFrom", data: BytesLike): Result; decodeFunctionResult(functionFragment: "transferFromCross", data: BytesLike): Result; decodeFunctionResult(functionFragment: "uniqueCollectionType", data: BytesLike): Result; } declare namespace ApprovalEvent$3 { type InputTuple = [ owner: AddressLike, spender: AddressLike, value: BigNumberish ]; type OutputTuple = [owner: string, spender: string, value: bigint]; interface OutputObject { owner: string; spender: string; value: bigint; } type Event = TypedContractEvent; type Filter = TypedDeferredTopicFilter; type Log = TypedEventLog; type LogDescription = TypedLogDescription; } declare namespace TransferEvent$3 { type InputTuple = [ from: AddressLike, to: AddressLike, value: BigNumberish ]; type OutputTuple = [from: string, to: string, value: bigint]; interface OutputObject { from: string; to: string; value: bigint; } type Event = TypedContractEvent; type Filter = TypedDeferredTopicFilter; type Log = TypedEventLog; type LogDescription = TypedLogDescription; } interface UniqueFungible extends BaseContract { connect(runner?: ContractRunner | null): UniqueFungible; waitForDeployment(): Promise; interface: UniqueFungibleInterface; queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; on(event: TCEvent, listener: TypedListener): Promise; on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; once(event: TCEvent, listener: TypedListener): Promise; once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; listeners(event: TCEvent): Promise>>; listeners(eventName?: string): Promise>; removeAllListeners(event?: TCEvent): Promise; addCollectionAdminCross: TypedContractMethod<[ newAdmin: CrossAddressStruct$3 ], [ void ], "nonpayable">; addToCollectionAllowListCross: TypedContractMethod<[ user: CrossAddressStruct$3 ], [ void ], "nonpayable">; allowance: TypedContractMethod<[ owner: AddressLike, spender: AddressLike ], [ bigint ], "view">; allowanceCross: TypedContractMethod<[ owner: CrossAddressStruct$3, spender: CrossAddressStruct$3 ], [ bigint ], "view">; allowlistedCross: TypedContractMethod<[ user: CrossAddressStruct$3 ], [ boolean ], "view">; approve: TypedContractMethod<[ spender: AddressLike, amount: BigNumberish ], [ boolean ], "nonpayable">; approveCross: TypedContractMethod<[ spender: CrossAddressStruct$3, amount: BigNumberish ], [ boolean ], "nonpayable">; balanceOf: TypedContractMethod<[owner: AddressLike], [bigint], "view">; balanceOfCross: TypedContractMethod<[ owner: CrossAddressStruct$3 ], [ bigint ], "view">; burnFromCross: TypedContractMethod<[ from: CrossAddressStruct$3, amount: BigNumberish ], [ boolean ], "nonpayable">; changeCollectionOwnerCross: TypedContractMethod<[ newOwner: CrossAddressStruct$3 ], [ void ], "nonpayable">; collectionAdmins: TypedContractMethod<[ ], [ CrossAddressStructOutput$2[] ], "view">; collectionHelperAddress: TypedContractMethod<[], [string], "view">; collectionLimits: TypedContractMethod<[ ], [ CollectionLimitStructOutput$2[] ], "view">; collectionNesting: TypedContractMethod<[ ], [ CollectionNestingAndPermissionStructOutput$2 ], "view">; collectionOwner: TypedContractMethod<[], [CrossAddressStructOutput$2], "view">; collectionProperties: TypedContractMethod<[ keys: string[] ], [ PropertyStructOutput$2[] ], "view">; collectionProperty: TypedContractMethod<[key: string], [string], "view">; collectionSponsor: TypedContractMethod<[ ], [ CrossAddressStructOutput$2 ], "view">; confirmCollectionSponsorship: TypedContractMethod<[], [void], "nonpayable">; contractAddress: TypedContractMethod<[], [string], "view">; decimals: TypedContractMethod<[], [bigint], "view">; deleteCollectionProperties: TypedContractMethod<[ keys: string[] ], [ void ], "nonpayable">; description: TypedContractMethod<[], [string], "view">; hasCollectionPendingSponsor: TypedContractMethod<[], [boolean], "view">; isOwnerOrAdminCross: TypedContractMethod<[ user: CrossAddressStruct$3 ], [ boolean ], "view">; mint: TypedContractMethod<[ to: AddressLike, amount: BigNumberish ], [ boolean ], "nonpayable">; mintBulk: TypedContractMethod<[ amounts: AmountForAddressStruct[] ], [ boolean ], "nonpayable">; mintCross: TypedContractMethod<[ to: CrossAddressStruct$3, amount: BigNumberish ], [ boolean ], "nonpayable">; name: TypedContractMethod<[], [string], "view">; removeCollectionAdminCross: TypedContractMethod<[ admin: CrossAddressStruct$3 ], [ void ], "nonpayable">; removeCollectionSponsor: TypedContractMethod<[], [void], "nonpayable">; removeFromCollectionAllowListCross: TypedContractMethod<[ user: CrossAddressStruct$3 ], [ void ], "nonpayable">; setCollectionAccess: TypedContractMethod<[ mode: BigNumberish ], [ void ], "nonpayable">; setCollectionLimit: TypedContractMethod<[ limit: CollectionLimitStruct$2 ], [ void ], "nonpayable">; setCollectionMintMode: TypedContractMethod<[ mode: boolean ], [ void ], "nonpayable">; setCollectionNesting: TypedContractMethod<[ collectionNestingAndPermissions: CollectionNestingAndPermissionStruct$2 ], [ void ], "nonpayable">; setCollectionProperties: TypedContractMethod<[ properties: PropertyStruct$2[] ], [ void ], "nonpayable">; setCollectionSponsorCross: TypedContractMethod<[ sponsor: CrossAddressStruct$3 ], [ void ], "nonpayable">; supportsInterface: TypedContractMethod<[ interfaceID: BytesLike ], [ boolean ], "view">; symbol: TypedContractMethod<[], [string], "view">; totalSupply: TypedContractMethod<[], [bigint], "view">; transfer: TypedContractMethod<[ to: AddressLike, amount: BigNumberish ], [ boolean ], "nonpayable">; transferCross: TypedContractMethod<[ to: CrossAddressStruct$3, amount: BigNumberish ], [ boolean ], "nonpayable">; transferFrom: TypedContractMethod<[ from: AddressLike, to: AddressLike, amount: BigNumberish ], [ boolean ], "nonpayable">; transferFromCross: TypedContractMethod<[ from: CrossAddressStruct$3, to: CrossAddressStruct$3, amount: BigNumberish ], [ boolean ], "nonpayable">; uniqueCollectionType: TypedContractMethod<[], [string], "view">; getFunction(key: string | FunctionFragment): T; getFunction(nameOrSignature: "addCollectionAdminCross"): TypedContractMethod<[newAdmin: CrossAddressStruct$3], [void], "nonpayable">; getFunction(nameOrSignature: "addToCollectionAllowListCross"): TypedContractMethod<[user: CrossAddressStruct$3], [void], "nonpayable">; getFunction(nameOrSignature: "allowance"): TypedContractMethod<[ owner: AddressLike, spender: AddressLike ], [ bigint ], "view">; getFunction(nameOrSignature: "allowanceCross"): TypedContractMethod<[ owner: CrossAddressStruct$3, spender: CrossAddressStruct$3 ], [ bigint ], "view">; getFunction(nameOrSignature: "allowlistedCross"): TypedContractMethod<[user: CrossAddressStruct$3], [boolean], "view">; getFunction(nameOrSignature: "approve"): TypedContractMethod<[ spender: AddressLike, amount: BigNumberish ], [ boolean ], "nonpayable">; getFunction(nameOrSignature: "approveCross"): TypedContractMethod<[ spender: CrossAddressStruct$3, amount: BigNumberish ], [ boolean ], "nonpayable">; getFunction(nameOrSignature: "balanceOf"): TypedContractMethod<[owner: AddressLike], [bigint], "view">; getFunction(nameOrSignature: "balanceOfCross"): TypedContractMethod<[owner: CrossAddressStruct$3], [bigint], "view">; getFunction(nameOrSignature: "burnFromCross"): TypedContractMethod<[ from: CrossAddressStruct$3, amount: BigNumberish ], [ boolean ], "nonpayable">; getFunction(nameOrSignature: "changeCollectionOwnerCross"): TypedContractMethod<[newOwner: CrossAddressStruct$3], [void], "nonpayable">; getFunction(nameOrSignature: "collectionAdmins"): TypedContractMethod<[], [CrossAddressStructOutput$2[]], "view">; getFunction(nameOrSignature: "collectionHelperAddress"): TypedContractMethod<[], [string], "view">; getFunction(nameOrSignature: "collectionLimits"): TypedContractMethod<[], [CollectionLimitStructOutput$2[]], "view">; getFunction(nameOrSignature: "collectionNesting"): TypedContractMethod<[ ], [ CollectionNestingAndPermissionStructOutput$2 ], "view">; getFunction(nameOrSignature: "collectionOwner"): TypedContractMethod<[], [CrossAddressStructOutput$2], "view">; getFunction(nameOrSignature: "collectionProperties"): TypedContractMethod<[keys: string[]], [PropertyStructOutput$2[]], "view">; getFunction(nameOrSignature: "collectionProperty"): TypedContractMethod<[key: string], [string], "view">; getFunction(nameOrSignature: "collectionSponsor"): TypedContractMethod<[], [CrossAddressStructOutput$2], "view">; getFunction(nameOrSignature: "confirmCollectionSponsorship"): TypedContractMethod<[], [void], "nonpayable">; getFunction(nameOrSignature: "contractAddress"): TypedContractMethod<[], [string], "view">; getFunction(nameOrSignature: "decimals"): TypedContractMethod<[], [bigint], "view">; getFunction(nameOrSignature: "deleteCollectionProperties"): TypedContractMethod<[keys: string[]], [void], "nonpayable">; getFunction(nameOrSignature: "description"): TypedContractMethod<[], [string], "view">; getFunction(nameOrSignature: "hasCollectionPendingSponsor"): TypedContractMethod<[], [boolean], "view">; getFunction(nameOrSignature: "isOwnerOrAdminCross"): TypedContractMethod<[user: CrossAddressStruct$3], [boolean], "view">; getFunction(nameOrSignature: "mint"): TypedContractMethod<[ to: AddressLike, amount: BigNumberish ], [ boolean ], "nonpayable">; getFunction(nameOrSignature: "mintBulk"): TypedContractMethod<[ amounts: AmountForAddressStruct[] ], [ boolean ], "nonpayable">; getFunction(nameOrSignature: "mintCross"): TypedContractMethod<[ to: CrossAddressStruct$3, amount: BigNumberish ], [ boolean ], "nonpayable">; getFunction(nameOrSignature: "name"): TypedContractMethod<[], [string], "view">; getFunction(nameOrSignature: "removeCollectionAdminCross"): TypedContractMethod<[admin: CrossAddressStruct$3], [void], "nonpayable">; getFunction(nameOrSignature: "removeCollectionSponsor"): TypedContractMethod<[], [void], "nonpayable">; getFunction(nameOrSignature: "removeFromCollectionAllowListCross"): TypedContractMethod<[user: CrossAddressStruct$3], [void], "nonpayable">; getFunction(nameOrSignature: "setCollectionAccess"): TypedContractMethod<[mode: BigNumberish], [void], "nonpayable">; getFunction(nameOrSignature: "setCollectionLimit"): TypedContractMethod<[limit: CollectionLimitStruct$2], [void], "nonpayable">; getFunction(nameOrSignature: "setCollectionMintMode"): TypedContractMethod<[mode: boolean], [void], "nonpayable">; getFunction(nameOrSignature: "setCollectionNesting"): TypedContractMethod<[ collectionNestingAndPermissions: CollectionNestingAndPermissionStruct$2 ], [ void ], "nonpayable">; getFunction(nameOrSignature: "setCollectionProperties"): TypedContractMethod<[properties: PropertyStruct$2[]], [void], "nonpayable">; getFunction(nameOrSignature: "setCollectionSponsorCross"): TypedContractMethod<[sponsor: CrossAddressStruct$3], [void], "nonpayable">; getFunction(nameOrSignature: "supportsInterface"): TypedContractMethod<[interfaceID: BytesLike], [boolean], "view">; getFunction(nameOrSignature: "symbol"): TypedContractMethod<[], [string], "view">; getFunction(nameOrSignature: "totalSupply"): TypedContractMethod<[], [bigint], "view">; getFunction(nameOrSignature: "transfer"): TypedContractMethod<[ to: AddressLike, amount: BigNumberish ], [ boolean ], "nonpayable">; getFunction(nameOrSignature: "transferCross"): TypedContractMethod<[ to: CrossAddressStruct$3, amount: BigNumberish ], [ boolean ], "nonpayable">; getFunction(nameOrSignature: "transferFrom"): TypedContractMethod<[ from: AddressLike, to: AddressLike, amount: BigNumberish ], [ boolean ], "nonpayable">; getFunction(nameOrSignature: "transferFromCross"): TypedContractMethod<[ from: CrossAddressStruct$3, to: CrossAddressStruct$3, amount: BigNumberish ], [ boolean ], "nonpayable">; getFunction(nameOrSignature: "uniqueCollectionType"): TypedContractMethod<[], [string], "view">; getEvent(key: "Approval"): TypedContractEvent; getEvent(key: "Transfer"): TypedContractEvent; filters: { "Approval(address,address,uint256)": TypedContractEvent; Approval: TypedContractEvent; "Transfer(address,address,uint256)": TypedContractEvent; Transfer: TypedContractEvent; }; } type CrossAddressStruct$2 = { eth: AddressLike; sub: BigNumberish; }; type CrossAddressStructOutput$1 = [eth: string, sub: bigint] & { eth: string; sub: bigint; }; type OptionUint256Struct$1 = { status: boolean; value: BigNumberish; }; type OptionUint256StructOutput$1 = [status: boolean, value: bigint] & { status: boolean; value: bigint; }; type CollectionLimitStruct$1 = { field: BigNumberish; value: OptionUint256Struct$1; }; type CollectionLimitStructOutput$1 = [ field: bigint, value: OptionUint256StructOutput$1 ] & { field: bigint; value: OptionUint256StructOutput$1; }; type CollectionNestingAndPermissionStruct$1 = { token_owner: boolean; collection_admin: boolean; restricted: AddressLike[]; }; type CollectionNestingAndPermissionStructOutput$1 = [ token_owner: boolean, collection_admin: boolean, restricted: string[] ] & { token_owner: boolean; collection_admin: boolean; restricted: string[]; }; type PropertyStruct$1 = { key: string; value: BytesLike; }; type PropertyStructOutput$1 = [key: string, value: string] & { key: string; value: string; }; type MintTokenDataStruct$1 = { owner: CrossAddressStruct$2; properties: PropertyStruct$1[]; }; type PropertyPermissionStruct$1 = { code: BigNumberish; value: boolean; }; type PropertyPermissionStructOutput$1 = [code: bigint, value: boolean] & { code: bigint; value: boolean; }; type TokenPropertyPermissionStruct$1 = { key: string; permissions: PropertyPermissionStruct$1[]; }; type TokenPropertyPermissionStructOutput$1 = [ key: string, permissions: PropertyPermissionStructOutput$1[] ] & { key: string; permissions: PropertyPermissionStructOutput$1[]; }; interface UniqueNFTInterface extends Interface { getFunction(nameOrSignature: "addCollectionAdminCross" | "addToCollectionAllowListCross" | "allowlistedCross" | "approve" | "approveCross" | "balanceOf" | "balanceOfCross" | "burn" | "burnFromCross" | "changeCollectionOwnerCross" | "collectionAdmins" | "collectionHelperAddress" | "collectionLimits" | "collectionNesting" | "collectionOwner" | "collectionProperties" | "collectionProperty" | "collectionSponsor" | "confirmCollectionSponsorship" | "contractAddress" | "deleteCollectionProperties" | "deleteProperties" | "description" | "getApproved" | "hasCollectionPendingSponsor" | "isApprovedForAll" | "isOwnerOrAdminCross" | "mint" | "mintBulkCross" | "mintCross" | "mintWithTokenURI" | "name" | "nextTokenId" | "ownerOf" | "ownerOfCross" | "properties" | "property" | "removeCollectionAdminCross" | "removeCollectionSponsor" | "removeFromCollectionAllowListCross" | "safeTransferFrom(address,address,uint256)" | "safeTransferFrom(address,address,uint256,bytes)" | "setApprovalForAll" | "setCollectionAccess" | "setCollectionLimit" | "setCollectionMintMode" | "setCollectionNesting" | "setCollectionProperties" | "setCollectionSponsorCross" | "setProperties" | "setTokenPropertyPermissions" | "supportsInterface" | "symbol" | "tokenByIndex" | "tokenOfOwnerByIndex" | "tokenPropertyPermissions" | "tokenURI" | "totalSupply" | "transfer" | "transferCross" | "transferFrom" | "transferFromCross" | "uniqueCollectionType"): FunctionFragment; getEvent(nameOrSignatureOrTopic: "Approval" | "ApprovalForAll" | "TokenChanged" | "Transfer"): EventFragment; encodeFunctionData(functionFragment: "addCollectionAdminCross", values: [CrossAddressStruct$2]): string; encodeFunctionData(functionFragment: "addToCollectionAllowListCross", values: [CrossAddressStruct$2]): string; encodeFunctionData(functionFragment: "allowlistedCross", values: [CrossAddressStruct$2]): string; encodeFunctionData(functionFragment: "approve", values: [AddressLike, BigNumberish]): string; encodeFunctionData(functionFragment: "approveCross", values: [CrossAddressStruct$2, BigNumberish]): string; encodeFunctionData(functionFragment: "balanceOf", values: [AddressLike]): string; encodeFunctionData(functionFragment: "balanceOfCross", values: [CrossAddressStruct$2]): string; encodeFunctionData(functionFragment: "burn", values: [BigNumberish]): string; encodeFunctionData(functionFragment: "burnFromCross", values: [CrossAddressStruct$2, BigNumberish]): string; encodeFunctionData(functionFragment: "changeCollectionOwnerCross", values: [CrossAddressStruct$2]): string; encodeFunctionData(functionFragment: "collectionAdmins", values?: undefined): string; encodeFunctionData(functionFragment: "collectionHelperAddress", values?: undefined): string; encodeFunctionData(functionFragment: "collectionLimits", values?: undefined): string; encodeFunctionData(functionFragment: "collectionNesting", values?: undefined): string; encodeFunctionData(functionFragment: "collectionOwner", values?: undefined): string; encodeFunctionData(functionFragment: "collectionProperties", values: [string[]]): string; encodeFunctionData(functionFragment: "collectionProperty", values: [string]): string; encodeFunctionData(functionFragment: "collectionSponsor", values?: undefined): string; encodeFunctionData(functionFragment: "confirmCollectionSponsorship", values?: undefined): string; encodeFunctionData(functionFragment: "contractAddress", values?: undefined): string; encodeFunctionData(functionFragment: "deleteCollectionProperties", values: [string[]]): string; encodeFunctionData(functionFragment: "deleteProperties", values: [BigNumberish, string[]]): string; encodeFunctionData(functionFragment: "description", values?: undefined): string; encodeFunctionData(functionFragment: "getApproved", values: [BigNumberish]): string; encodeFunctionData(functionFragment: "hasCollectionPendingSponsor", values?: undefined): string; encodeFunctionData(functionFragment: "isApprovedForAll", values: [AddressLike, AddressLike]): string; encodeFunctionData(functionFragment: "isOwnerOrAdminCross", values: [CrossAddressStruct$2]): string; encodeFunctionData(functionFragment: "mint", values: [AddressLike]): string; encodeFunctionData(functionFragment: "mintBulkCross", values: [MintTokenDataStruct$1[]]): string; encodeFunctionData(functionFragment: "mintCross", values: [CrossAddressStruct$2, PropertyStruct$1[]]): string; encodeFunctionData(functionFragment: "mintWithTokenURI", values: [AddressLike, string]): string; encodeFunctionData(functionFragment: "name", values?: undefined): string; encodeFunctionData(functionFragment: "nextTokenId", values?: undefined): string; encodeFunctionData(functionFragment: "ownerOf", values: [BigNumberish]): string; encodeFunctionData(functionFragment: "ownerOfCross", values: [BigNumberish]): string; encodeFunctionData(functionFragment: "properties", values: [BigNumberish, string[]]): string; encodeFunctionData(functionFragment: "property", values: [BigNumberish, string]): string; encodeFunctionData(functionFragment: "removeCollectionAdminCross", values: [CrossAddressStruct$2]): string; encodeFunctionData(functionFragment: "removeCollectionSponsor", values?: undefined): string; encodeFunctionData(functionFragment: "removeFromCollectionAllowListCross", values: [CrossAddressStruct$2]): string; encodeFunctionData(functionFragment: "safeTransferFrom(address,address,uint256)", values: [AddressLike, AddressLike, BigNumberish]): string; encodeFunctionData(functionFragment: "safeTransferFrom(address,address,uint256,bytes)", values: [AddressLike, AddressLike, BigNumberish, BytesLike]): string; encodeFunctionData(functionFragment: "setApprovalForAll", values: [AddressLike, boolean]): string; encodeFunctionData(functionFragment: "setCollectionAccess", values: [BigNumberish]): string; encodeFunctionData(functionFragment: "setCollectionLimit", values: [CollectionLimitStruct$1]): string; encodeFunctionData(functionFragment: "setCollectionMintMode", values: [boolean]): string; encodeFunctionData(functionFragment: "setCollectionNesting", values: [CollectionNestingAndPermissionStruct$1]): string; encodeFunctionData(functionFragment: "setCollectionProperties", values: [PropertyStruct$1[]]): string; encodeFunctionData(functionFragment: "setCollectionSponsorCross", values: [CrossAddressStruct$2]): string; encodeFunctionData(functionFragment: "setProperties", values: [BigNumberish, PropertyStruct$1[]]): string; encodeFunctionData(functionFragment: "setTokenPropertyPermissions", values: [TokenPropertyPermissionStruct$1[]]): string; encodeFunctionData(functionFragment: "supportsInterface", values: [BytesLike]): string; encodeFunctionData(functionFragment: "symbol", values?: undefined): string; encodeFunctionData(functionFragment: "tokenByIndex", values: [BigNumberish]): string; encodeFunctionData(functionFragment: "tokenOfOwnerByIndex", values: [AddressLike, BigNumberish]): string; encodeFunctionData(functionFragment: "tokenPropertyPermissions", values?: undefined): string; encodeFunctionData(functionFragment: "tokenURI", values: [BigNumberish]): string; encodeFunctionData(functionFragment: "totalSupply", values?: undefined): string; encodeFunctionData(functionFragment: "transfer", values: [AddressLike, BigNumberish]): string; encodeFunctionData(functionFragment: "transferCross", values: [CrossAddressStruct$2, BigNumberish]): string; encodeFunctionData(functionFragment: "transferFrom", values: [AddressLike, AddressLike, BigNumberish]): string; encodeFunctionData(functionFragment: "transferFromCross", values: [CrossAddressStruct$2, CrossAddressStruct$2, BigNumberish]): string; encodeFunctionData(functionFragment: "uniqueCollectionType", values?: undefined): string; decodeFunctionResult(functionFragment: "addCollectionAdminCross", data: BytesLike): Result; decodeFunctionResult(functionFragment: "addToCollectionAllowListCross", data: BytesLike): Result; decodeFunctionResult(functionFragment: "allowlistedCross", data: BytesLike): Result; decodeFunctionResult(functionFragment: "approve", data: BytesLike): Result; decodeFunctionResult(functionFragment: "approveCross", data: BytesLike): Result; decodeFunctionResult(functionFragment: "balanceOf", data: BytesLike): Result; decodeFunctionResult(functionFragment: "balanceOfCross", data: BytesLike): Result; decodeFunctionResult(functionFragment: "burn", data: BytesLike): Result; decodeFunctionResult(functionFragment: "burnFromCross", data: BytesLike): Result; decodeFunctionResult(functionFragment: "changeCollectionOwnerCross", data: BytesLike): Result; decodeFunctionResult(functionFragment: "collectionAdmins", data: BytesLike): Result; decodeFunctionResult(functionFragment: "collectionHelperAddress", data: BytesLike): Result; decodeFunctionResult(functionFragment: "collectionLimits", data: BytesLike): Result; decodeFunctionResult(functionFragment: "collectionNesting", data: BytesLike): Result; decodeFunctionResult(functionFragment: "collectionOwner", data: BytesLike): Result; decodeFunctionResult(functionFragment: "collectionProperties", data: BytesLike): Result; decodeFunctionResult(functionFragment: "collectionProperty", data: BytesLike): Result; decodeFunctionResult(functionFragment: "collectionSponsor", data: BytesLike): Result; decodeFunctionResult(functionFragment: "confirmCollectionSponsorship", data: BytesLike): Result; decodeFunctionResult(functionFragment: "contractAddress", data: BytesLike): Result; decodeFunctionResult(functionFragment: "deleteCollectionProperties", data: BytesLike): Result; decodeFunctionResult(functionFragment: "deleteProperties", data: BytesLike): Result; decodeFunctionResult(functionFragment: "description", data: BytesLike): Result; decodeFunctionResult(functionFragment: "getApproved", data: BytesLike): Result; decodeFunctionResult(functionFragment: "hasCollectionPendingSponsor", data: BytesLike): Result; decodeFunctionResult(functionFragment: "isApprovedForAll", data: BytesLike): Result; decodeFunctionResult(functionFragment: "isOwnerOrAdminCross", data: BytesLike): Result; decodeFunctionResult(functionFragment: "mint", data: BytesLike): Result; decodeFunctionResult(functionFragment: "mintBulkCross", data: BytesLike): Result; decodeFunctionResult(functionFragment: "mintCross", data: BytesLike): Result; decodeFunctionResult(functionFragment: "mintWithTokenURI", data: BytesLike): Result; decodeFunctionResult(functionFragment: "name", data: BytesLike): Result; decodeFunctionResult(functionFragment: "nextTokenId", data: BytesLike): Result; decodeFunctionResult(functionFragment: "ownerOf", data: BytesLike): Result; decodeFunctionResult(functionFragment: "ownerOfCross", data: BytesLike): Result; decodeFunctionResult(functionFragment: "properties", data: BytesLike): Result; decodeFunctionResult(functionFragment: "property", data: BytesLike): Result; decodeFunctionResult(functionFragment: "removeCollectionAdminCross", data: BytesLike): Result; decodeFunctionResult(functionFragment: "removeCollectionSponsor", data: BytesLike): Result; decodeFunctionResult(functionFragment: "removeFromCollectionAllowListCross", data: BytesLike): Result; decodeFunctionResult(functionFragment: "safeTransferFrom(address,address,uint256)", data: BytesLike): Result; decodeFunctionResult(functionFragment: "safeTransferFrom(address,address,uint256,bytes)", data: BytesLike): Result; decodeFunctionResult(functionFragment: "setApprovalForAll", data: BytesLike): Result; decodeFunctionResult(functionFragment: "setCollectionAccess", data: BytesLike): Result; decodeFunctionResult(functionFragment: "setCollectionLimit", data: BytesLike): Result; decodeFunctionResult(functionFragment: "setCollectionMintMode", data: BytesLike): Result; decodeFunctionResult(functionFragment: "setCollectionNesting", data: BytesLike): Result; decodeFunctionResult(functionFragment: "setCollectionProperties", data: BytesLike): Result; decodeFunctionResult(functionFragment: "setCollectionSponsorCross", data: BytesLike): Result; decodeFunctionResult(functionFragment: "setProperties", data: BytesLike): Result; decodeFunctionResult(functionFragment: "setTokenPropertyPermissions", data: BytesLike): Result; decodeFunctionResult(functionFragment: "supportsInterface", data: BytesLike): Result; decodeFunctionResult(functionFragment: "symbol", data: BytesLike): Result; decodeFunctionResult(functionFragment: "tokenByIndex", data: BytesLike): Result; decodeFunctionResult(functionFragment: "tokenOfOwnerByIndex", data: BytesLike): Result; decodeFunctionResult(functionFragment: "tokenPropertyPermissions", data: BytesLike): Result; decodeFunctionResult(functionFragment: "tokenURI", data: BytesLike): Result; decodeFunctionResult(functionFragment: "totalSupply", data: BytesLike): Result; decodeFunctionResult(functionFragment: "transfer", data: BytesLike): Result; decodeFunctionResult(functionFragment: "transferCross", data: BytesLike): Result; decodeFunctionResult(functionFragment: "transferFrom", data: BytesLike): Result; decodeFunctionResult(functionFragment: "transferFromCross", data: BytesLike): Result; decodeFunctionResult(functionFragment: "uniqueCollectionType", data: BytesLike): Result; } declare namespace ApprovalEvent$2 { type InputTuple = [ owner: AddressLike, approved: AddressLike, tokenId: BigNumberish ]; type OutputTuple = [owner: string, approved: string, tokenId: bigint]; interface OutputObject { owner: string; approved: string; tokenId: bigint; } type Event = TypedContractEvent; type Filter = TypedDeferredTopicFilter; type Log = TypedEventLog; type LogDescription = TypedLogDescription; } declare namespace ApprovalForAllEvent$1 { type InputTuple = [ owner: AddressLike, operator: AddressLike, approved: boolean ]; type OutputTuple = [ owner: string, operator: string, approved: boolean ]; interface OutputObject { owner: string; operator: string; approved: boolean; } type Event = TypedContractEvent; type Filter = TypedDeferredTopicFilter; type Log = TypedEventLog; type LogDescription = TypedLogDescription; } declare namespace TokenChangedEvent$1 { type InputTuple = [tokenId: BigNumberish]; type OutputTuple = [tokenId: bigint]; interface OutputObject { tokenId: bigint; } type Event = TypedContractEvent; type Filter = TypedDeferredTopicFilter; type Log = TypedEventLog; type LogDescription = TypedLogDescription; } declare namespace TransferEvent$2 { type InputTuple = [ from: AddressLike, to: AddressLike, tokenId: BigNumberish ]; type OutputTuple = [from: string, to: string, tokenId: bigint]; interface OutputObject { from: string; to: string; tokenId: bigint; } type Event = TypedContractEvent; type Filter = TypedDeferredTopicFilter; type Log = TypedEventLog; type LogDescription = TypedLogDescription; } interface UniqueNFT extends BaseContract { connect(runner?: ContractRunner | null): UniqueNFT; waitForDeployment(): Promise; interface: UniqueNFTInterface; queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; on(event: TCEvent, listener: TypedListener): Promise; on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; once(event: TCEvent, listener: TypedListener): Promise; once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; listeners(event: TCEvent): Promise>>; listeners(eventName?: string): Promise>; removeAllListeners(event?: TCEvent): Promise; addCollectionAdminCross: TypedContractMethod<[ newAdmin: CrossAddressStruct$2 ], [ void ], "nonpayable">; addToCollectionAllowListCross: TypedContractMethod<[ user: CrossAddressStruct$2 ], [ void ], "nonpayable">; allowlistedCross: TypedContractMethod<[ user: CrossAddressStruct$2 ], [ boolean ], "view">; approve: TypedContractMethod<[ approved: AddressLike, tokenId: BigNumberish ], [ void ], "nonpayable">; approveCross: TypedContractMethod<[ approved: CrossAddressStruct$2, tokenId: BigNumberish ], [ void ], "nonpayable">; balanceOf: TypedContractMethod<[owner: AddressLike], [bigint], "view">; balanceOfCross: TypedContractMethod<[ owner: CrossAddressStruct$2 ], [ bigint ], "view">; burn: TypedContractMethod<[tokenId: BigNumberish], [void], "nonpayable">; burnFromCross: TypedContractMethod<[ from: CrossAddressStruct$2, tokenId: BigNumberish ], [ void ], "nonpayable">; changeCollectionOwnerCross: TypedContractMethod<[ newOwner: CrossAddressStruct$2 ], [ void ], "nonpayable">; collectionAdmins: TypedContractMethod<[ ], [ CrossAddressStructOutput$1[] ], "view">; collectionHelperAddress: TypedContractMethod<[], [string], "view">; collectionLimits: TypedContractMethod<[ ], [ CollectionLimitStructOutput$1[] ], "view">; collectionNesting: TypedContractMethod<[ ], [ CollectionNestingAndPermissionStructOutput$1 ], "view">; collectionOwner: TypedContractMethod<[], [CrossAddressStructOutput$1], "view">; collectionProperties: TypedContractMethod<[ keys: string[] ], [ PropertyStructOutput$1[] ], "view">; collectionProperty: TypedContractMethod<[key: string], [string], "view">; collectionSponsor: TypedContractMethod<[ ], [ CrossAddressStructOutput$1 ], "view">; confirmCollectionSponsorship: TypedContractMethod<[], [void], "nonpayable">; contractAddress: TypedContractMethod<[], [string], "view">; deleteCollectionProperties: TypedContractMethod<[ keys: string[] ], [ void ], "nonpayable">; deleteProperties: TypedContractMethod<[ tokenId: BigNumberish, keys: string[] ], [ void ], "nonpayable">; description: TypedContractMethod<[], [string], "view">; getApproved: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; hasCollectionPendingSponsor: TypedContractMethod<[], [boolean], "view">; isApprovedForAll: TypedContractMethod<[ owner: AddressLike, operator: AddressLike ], [ boolean ], "view">; isOwnerOrAdminCross: TypedContractMethod<[ user: CrossAddressStruct$2 ], [ boolean ], "view">; mint: TypedContractMethod<[to: AddressLike], [bigint], "nonpayable">; mintBulkCross: TypedContractMethod<[ data: MintTokenDataStruct$1[] ], [ boolean ], "nonpayable">; mintCross: TypedContractMethod<[ to: CrossAddressStruct$2, properties: PropertyStruct$1[] ], [ bigint ], "nonpayable">; mintWithTokenURI: TypedContractMethod<[ to: AddressLike, tokenUri: string ], [ bigint ], "nonpayable">; name: TypedContractMethod<[], [string], "view">; nextTokenId: TypedContractMethod<[], [bigint], "view">; ownerOf: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; ownerOfCross: TypedContractMethod<[ tokenId: BigNumberish ], [ CrossAddressStructOutput$1 ], "view">; properties: TypedContractMethod<[ tokenId: BigNumberish, keys: string[] ], [ PropertyStructOutput$1[] ], "view">; property: TypedContractMethod<[ tokenId: BigNumberish, key: string ], [ string ], "view">; removeCollectionAdminCross: TypedContractMethod<[ admin: CrossAddressStruct$2 ], [ void ], "nonpayable">; removeCollectionSponsor: TypedContractMethod<[], [void], "nonpayable">; removeFromCollectionAllowListCross: TypedContractMethod<[ user: CrossAddressStruct$2 ], [ void ], "nonpayable">; "safeTransferFrom(address,address,uint256)": TypedContractMethod<[ from: AddressLike, to: AddressLike, tokenId: BigNumberish ], [ void ], "nonpayable">; "safeTransferFrom(address,address,uint256,bytes)": TypedContractMethod<[ from: AddressLike, to: AddressLike, tokenId: BigNumberish, data: BytesLike ], [ void ], "nonpayable">; setApprovalForAll: TypedContractMethod<[ operator: AddressLike, approved: boolean ], [ void ], "nonpayable">; setCollectionAccess: TypedContractMethod<[ mode: BigNumberish ], [ void ], "nonpayable">; setCollectionLimit: TypedContractMethod<[ limit: CollectionLimitStruct$1 ], [ void ], "nonpayable">; setCollectionMintMode: TypedContractMethod<[ mode: boolean ], [ void ], "nonpayable">; setCollectionNesting: TypedContractMethod<[ collectionNestingAndPermissions: CollectionNestingAndPermissionStruct$1 ], [ void ], "nonpayable">; setCollectionProperties: TypedContractMethod<[ properties: PropertyStruct$1[] ], [ void ], "nonpayable">; setCollectionSponsorCross: TypedContractMethod<[ sponsor: CrossAddressStruct$2 ], [ void ], "nonpayable">; setProperties: TypedContractMethod<[ tokenId: BigNumberish, properties: PropertyStruct$1[] ], [ void ], "nonpayable">; setTokenPropertyPermissions: TypedContractMethod<[ permissions: TokenPropertyPermissionStruct$1[] ], [ void ], "nonpayable">; supportsInterface: TypedContractMethod<[ interfaceID: BytesLike ], [ boolean ], "view">; symbol: TypedContractMethod<[], [string], "view">; tokenByIndex: TypedContractMethod<[index: BigNumberish], [bigint], "view">; tokenOfOwnerByIndex: TypedContractMethod<[ owner: AddressLike, index: BigNumberish ], [ bigint ], "view">; tokenPropertyPermissions: TypedContractMethod<[ ], [ TokenPropertyPermissionStructOutput$1[] ], "view">; tokenURI: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; totalSupply: TypedContractMethod<[], [bigint], "view">; transfer: TypedContractMethod<[ to: AddressLike, tokenId: BigNumberish ], [ void ], "nonpayable">; transferCross: TypedContractMethod<[ to: CrossAddressStruct$2, tokenId: BigNumberish ], [ void ], "nonpayable">; transferFrom: TypedContractMethod<[ from: AddressLike, to: AddressLike, tokenId: BigNumberish ], [ void ], "nonpayable">; transferFromCross: TypedContractMethod<[ from: CrossAddressStruct$2, to: CrossAddressStruct$2, tokenId: BigNumberish ], [ void ], "nonpayable">; uniqueCollectionType: TypedContractMethod<[], [string], "view">; getFunction(key: string | FunctionFragment): T; getFunction(nameOrSignature: "addCollectionAdminCross"): TypedContractMethod<[newAdmin: CrossAddressStruct$2], [void], "nonpayable">; getFunction(nameOrSignature: "addToCollectionAllowListCross"): TypedContractMethod<[user: CrossAddressStruct$2], [void], "nonpayable">; getFunction(nameOrSignature: "allowlistedCross"): TypedContractMethod<[user: CrossAddressStruct$2], [boolean], "view">; getFunction(nameOrSignature: "approve"): TypedContractMethod<[ approved: AddressLike, tokenId: BigNumberish ], [ void ], "nonpayable">; getFunction(nameOrSignature: "approveCross"): TypedContractMethod<[ approved: CrossAddressStruct$2, tokenId: BigNumberish ], [ void ], "nonpayable">; getFunction(nameOrSignature: "balanceOf"): TypedContractMethod<[owner: AddressLike], [bigint], "view">; getFunction(nameOrSignature: "balanceOfCross"): TypedContractMethod<[owner: CrossAddressStruct$2], [bigint], "view">; getFunction(nameOrSignature: "burn"): TypedContractMethod<[tokenId: BigNumberish], [void], "nonpayable">; getFunction(nameOrSignature: "burnFromCross"): TypedContractMethod<[ from: CrossAddressStruct$2, tokenId: BigNumberish ], [ void ], "nonpayable">; getFunction(nameOrSignature: "changeCollectionOwnerCross"): TypedContractMethod<[newOwner: CrossAddressStruct$2], [void], "nonpayable">; getFunction(nameOrSignature: "collectionAdmins"): TypedContractMethod<[], [CrossAddressStructOutput$1[]], "view">; getFunction(nameOrSignature: "collectionHelperAddress"): TypedContractMethod<[], [string], "view">; getFunction(nameOrSignature: "collectionLimits"): TypedContractMethod<[], [CollectionLimitStructOutput$1[]], "view">; getFunction(nameOrSignature: "collectionNesting"): TypedContractMethod<[ ], [ CollectionNestingAndPermissionStructOutput$1 ], "view">; getFunction(nameOrSignature: "collectionOwner"): TypedContractMethod<[], [CrossAddressStructOutput$1], "view">; getFunction(nameOrSignature: "collectionProperties"): TypedContractMethod<[keys: string[]], [PropertyStructOutput$1[]], "view">; getFunction(nameOrSignature: "collectionProperty"): TypedContractMethod<[key: string], [string], "view">; getFunction(nameOrSignature: "collectionSponsor"): TypedContractMethod<[], [CrossAddressStructOutput$1], "view">; getFunction(nameOrSignature: "confirmCollectionSponsorship"): TypedContractMethod<[], [void], "nonpayable">; getFunction(nameOrSignature: "contractAddress"): TypedContractMethod<[], [string], "view">; getFunction(nameOrSignature: "deleteCollectionProperties"): TypedContractMethod<[keys: string[]], [void], "nonpayable">; getFunction(nameOrSignature: "deleteProperties"): TypedContractMethod<[ tokenId: BigNumberish, keys: string[] ], [ void ], "nonpayable">; getFunction(nameOrSignature: "description"): TypedContractMethod<[], [string], "view">; getFunction(nameOrSignature: "getApproved"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; getFunction(nameOrSignature: "hasCollectionPendingSponsor"): TypedContractMethod<[], [boolean], "view">; getFunction(nameOrSignature: "isApprovedForAll"): TypedContractMethod<[ owner: AddressLike, operator: AddressLike ], [ boolean ], "view">; getFunction(nameOrSignature: "isOwnerOrAdminCross"): TypedContractMethod<[user: CrossAddressStruct$2], [boolean], "view">; getFunction(nameOrSignature: "mint"): TypedContractMethod<[to: AddressLike], [bigint], "nonpayable">; getFunction(nameOrSignature: "mintBulkCross"): TypedContractMethod<[ data: MintTokenDataStruct$1[] ], [ boolean ], "nonpayable">; getFunction(nameOrSignature: "mintCross"): TypedContractMethod<[ to: CrossAddressStruct$2, properties: PropertyStruct$1[] ], [ bigint ], "nonpayable">; getFunction(nameOrSignature: "mintWithTokenURI"): TypedContractMethod<[ to: AddressLike, tokenUri: string ], [ bigint ], "nonpayable">; getFunction(nameOrSignature: "name"): TypedContractMethod<[], [string], "view">; getFunction(nameOrSignature: "nextTokenId"): TypedContractMethod<[], [bigint], "view">; getFunction(nameOrSignature: "ownerOf"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; getFunction(nameOrSignature: "ownerOfCross"): TypedContractMethod<[ tokenId: BigNumberish ], [ CrossAddressStructOutput$1 ], "view">; getFunction(nameOrSignature: "properties"): TypedContractMethod<[ tokenId: BigNumberish, keys: string[] ], [ PropertyStructOutput$1[] ], "view">; getFunction(nameOrSignature: "property"): TypedContractMethod<[ tokenId: BigNumberish, key: string ], [ string ], "view">; getFunction(nameOrSignature: "removeCollectionAdminCross"): TypedContractMethod<[admin: CrossAddressStruct$2], [void], "nonpayable">; getFunction(nameOrSignature: "removeCollectionSponsor"): TypedContractMethod<[], [void], "nonpayable">; getFunction(nameOrSignature: "removeFromCollectionAllowListCross"): TypedContractMethod<[user: CrossAddressStruct$2], [void], "nonpayable">; getFunction(nameOrSignature: "safeTransferFrom(address,address,uint256)"): TypedContractMethod<[ from: AddressLike, to: AddressLike, tokenId: BigNumberish ], [ void ], "nonpayable">; getFunction(nameOrSignature: "safeTransferFrom(address,address,uint256,bytes)"): TypedContractMethod<[ from: AddressLike, to: AddressLike, tokenId: BigNumberish, data: BytesLike ], [ void ], "nonpayable">; getFunction(nameOrSignature: "setApprovalForAll"): TypedContractMethod<[ operator: AddressLike, approved: boolean ], [ void ], "nonpayable">; getFunction(nameOrSignature: "setCollectionAccess"): TypedContractMethod<[mode: BigNumberish], [void], "nonpayable">; getFunction(nameOrSignature: "setCollectionLimit"): TypedContractMethod<[limit: CollectionLimitStruct$1], [void], "nonpayable">; getFunction(nameOrSignature: "setCollectionMintMode"): TypedContractMethod<[mode: boolean], [void], "nonpayable">; getFunction(nameOrSignature: "setCollectionNesting"): TypedContractMethod<[ collectionNestingAndPermissions: CollectionNestingAndPermissionStruct$1 ], [ void ], "nonpayable">; getFunction(nameOrSignature: "setCollectionProperties"): TypedContractMethod<[properties: PropertyStruct$1[]], [void], "nonpayable">; getFunction(nameOrSignature: "setCollectionSponsorCross"): TypedContractMethod<[sponsor: CrossAddressStruct$2], [void], "nonpayable">; getFunction(nameOrSignature: "setProperties"): TypedContractMethod<[ tokenId: BigNumberish, properties: PropertyStruct$1[] ], [ void ], "nonpayable">; getFunction(nameOrSignature: "setTokenPropertyPermissions"): TypedContractMethod<[ permissions: TokenPropertyPermissionStruct$1[] ], [ void ], "nonpayable">; getFunction(nameOrSignature: "supportsInterface"): TypedContractMethod<[interfaceID: BytesLike], [boolean], "view">; getFunction(nameOrSignature: "symbol"): TypedContractMethod<[], [string], "view">; getFunction(nameOrSignature: "tokenByIndex"): TypedContractMethod<[index: BigNumberish], [bigint], "view">; getFunction(nameOrSignature: "tokenOfOwnerByIndex"): TypedContractMethod<[ owner: AddressLike, index: BigNumberish ], [ bigint ], "view">; getFunction(nameOrSignature: "tokenPropertyPermissions"): TypedContractMethod<[], [TokenPropertyPermissionStructOutput$1[]], "view">; getFunction(nameOrSignature: "tokenURI"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; getFunction(nameOrSignature: "totalSupply"): TypedContractMethod<[], [bigint], "view">; getFunction(nameOrSignature: "transfer"): TypedContractMethod<[ to: AddressLike, tokenId: BigNumberish ], [ void ], "nonpayable">; getFunction(nameOrSignature: "transferCross"): TypedContractMethod<[ to: CrossAddressStruct$2, tokenId: BigNumberish ], [ void ], "nonpayable">; getFunction(nameOrSignature: "transferFrom"): TypedContractMethod<[ from: AddressLike, to: AddressLike, tokenId: BigNumberish ], [ void ], "nonpayable">; getFunction(nameOrSignature: "transferFromCross"): TypedContractMethod<[ from: CrossAddressStruct$2, to: CrossAddressStruct$2, tokenId: BigNumberish ], [ void ], "nonpayable">; getFunction(nameOrSignature: "uniqueCollectionType"): TypedContractMethod<[], [string], "view">; getEvent(key: "Approval"): TypedContractEvent; getEvent(key: "ApprovalForAll"): TypedContractEvent; getEvent(key: "TokenChanged"): TypedContractEvent; getEvent(key: "Transfer"): TypedContractEvent; filters: { "Approval(address,address,uint256)": TypedContractEvent; Approval: TypedContractEvent; "ApprovalForAll(address,address,bool)": TypedContractEvent; ApprovalForAll: TypedContractEvent; "TokenChanged(uint256)": TypedContractEvent; TokenChanged: TypedContractEvent; "Transfer(address,address,uint256)": TypedContractEvent; Transfer: TypedContractEvent; }; } type CrossAddressStruct$1 = { eth: AddressLike; sub: BigNumberish; }; type CrossAddressStructOutput = [eth: string, sub: bigint] & { eth: string; sub: bigint; }; type OptionUint256Struct = { status: boolean; value: BigNumberish; }; type OptionUint256StructOutput = [status: boolean, value: bigint] & { status: boolean; value: bigint; }; type CollectionLimitStruct = { field: BigNumberish; value: OptionUint256Struct; }; type CollectionLimitStructOutput = [ field: bigint, value: OptionUint256StructOutput ] & { field: bigint; value: OptionUint256StructOutput; }; type CollectionNestingAndPermissionStruct = { token_owner: boolean; collection_admin: boolean; restricted: AddressLike[]; }; type CollectionNestingAndPermissionStructOutput = [ token_owner: boolean, collection_admin: boolean, restricted: string[] ] & { token_owner: boolean; collection_admin: boolean; restricted: string[]; }; type PropertyStruct = { key: string; value: BytesLike; }; type PropertyStructOutput = [key: string, value: string] & { key: string; value: string; }; type OwnerPiecesStruct = { owner: CrossAddressStruct$1; pieces: BigNumberish; }; type MintTokenDataStruct = { owners: OwnerPiecesStruct[]; properties: PropertyStruct[]; }; type PropertyPermissionStruct = { code: BigNumberish; value: boolean; }; type PropertyPermissionStructOutput = [code: bigint, value: boolean] & { code: bigint; value: boolean; }; type TokenPropertyPermissionStruct = { key: string; permissions: PropertyPermissionStruct[]; }; type TokenPropertyPermissionStructOutput = [ key: string, permissions: PropertyPermissionStructOutput[] ] & { key: string; permissions: PropertyPermissionStructOutput[]; }; interface UniqueRefungibleInterface extends Interface { getFunction(nameOrSignature: "addCollectionAdminCross" | "addToCollectionAllowListCross" | "allowlistedCross" | "approve" | "balanceOf" | "balanceOfCross" | "burn" | "burnFromCross" | "changeCollectionOwnerCross" | "collectionAdmins" | "collectionHelperAddress" | "collectionLimits" | "collectionNesting" | "collectionOwner" | "collectionProperties" | "collectionProperty" | "collectionSponsor" | "confirmCollectionSponsorship" | "contractAddress" | "deleteCollectionProperties" | "deleteProperties" | "description" | "getApproved" | "hasCollectionPendingSponsor" | "isApprovedForAll" | "isOwnerOrAdminCross" | "mint" | "mintBulkCross" | "mintCross" | "mintWithTokenURI" | "name" | "nextTokenId" | "ownerOf" | "ownerOfCross" | "properties" | "property" | "removeCollectionAdminCross" | "removeCollectionSponsor" | "removeFromCollectionAllowListCross" | "safeTransferFrom(address,address,uint256)" | "safeTransferFrom(address,address,uint256,bytes)" | "setApprovalForAll" | "setCollectionAccess" | "setCollectionLimit" | "setCollectionMintMode" | "setCollectionNesting" | "setCollectionProperties" | "setCollectionSponsorCross" | "setProperties" | "setTokenPropertyPermissions" | "supportsInterface" | "symbol" | "tokenByIndex" | "tokenContractAddress" | "tokenOfOwnerByIndex" | "tokenPropertyPermissions" | "tokenURI" | "totalSupply" | "transfer" | "transferCross" | "transferFrom" | "transferFromCross" | "uniqueCollectionType"): FunctionFragment; getEvent(nameOrSignatureOrTopic: "Approval" | "ApprovalForAll" | "TokenChanged" | "Transfer"): EventFragment; encodeFunctionData(functionFragment: "addCollectionAdminCross", values: [CrossAddressStruct$1]): string; encodeFunctionData(functionFragment: "addToCollectionAllowListCross", values: [CrossAddressStruct$1]): string; encodeFunctionData(functionFragment: "allowlistedCross", values: [CrossAddressStruct$1]): string; encodeFunctionData(functionFragment: "approve", values: [AddressLike, BigNumberish]): string; encodeFunctionData(functionFragment: "balanceOf", values: [AddressLike]): string; encodeFunctionData(functionFragment: "balanceOfCross", values: [CrossAddressStruct$1]): string; encodeFunctionData(functionFragment: "burn", values: [BigNumberish]): string; encodeFunctionData(functionFragment: "burnFromCross", values: [CrossAddressStruct$1, BigNumberish]): string; encodeFunctionData(functionFragment: "changeCollectionOwnerCross", values: [CrossAddressStruct$1]): string; encodeFunctionData(functionFragment: "collectionAdmins", values?: undefined): string; encodeFunctionData(functionFragment: "collectionHelperAddress", values?: undefined): string; encodeFunctionData(functionFragment: "collectionLimits", values?: undefined): string; encodeFunctionData(functionFragment: "collectionNesting", values?: undefined): string; encodeFunctionData(functionFragment: "collectionOwner", values?: undefined): string; encodeFunctionData(functionFragment: "collectionProperties", values: [string[]]): string; encodeFunctionData(functionFragment: "collectionProperty", values: [string]): string; encodeFunctionData(functionFragment: "collectionSponsor", values?: undefined): string; encodeFunctionData(functionFragment: "confirmCollectionSponsorship", values?: undefined): string; encodeFunctionData(functionFragment: "contractAddress", values?: undefined): string; encodeFunctionData(functionFragment: "deleteCollectionProperties", values: [string[]]): string; encodeFunctionData(functionFragment: "deleteProperties", values: [BigNumberish, string[]]): string; encodeFunctionData(functionFragment: "description", values?: undefined): string; encodeFunctionData(functionFragment: "getApproved", values: [BigNumberish]): string; encodeFunctionData(functionFragment: "hasCollectionPendingSponsor", values?: undefined): string; encodeFunctionData(functionFragment: "isApprovedForAll", values: [AddressLike, AddressLike]): string; encodeFunctionData(functionFragment: "isOwnerOrAdminCross", values: [CrossAddressStruct$1]): string; encodeFunctionData(functionFragment: "mint", values: [AddressLike]): string; encodeFunctionData(functionFragment: "mintBulkCross", values: [MintTokenDataStruct[]]): string; encodeFunctionData(functionFragment: "mintCross", values: [CrossAddressStruct$1, PropertyStruct[]]): string; encodeFunctionData(functionFragment: "mintWithTokenURI", values: [AddressLike, string]): string; encodeFunctionData(functionFragment: "name", values?: undefined): string; encodeFunctionData(functionFragment: "nextTokenId", values?: undefined): string; encodeFunctionData(functionFragment: "ownerOf", values: [BigNumberish]): string; encodeFunctionData(functionFragment: "ownerOfCross", values: [BigNumberish]): string; encodeFunctionData(functionFragment: "properties", values: [BigNumberish, string[]]): string; encodeFunctionData(functionFragment: "property", values: [BigNumberish, string]): string; encodeFunctionData(functionFragment: "removeCollectionAdminCross", values: [CrossAddressStruct$1]): string; encodeFunctionData(functionFragment: "removeCollectionSponsor", values?: undefined): string; encodeFunctionData(functionFragment: "removeFromCollectionAllowListCross", values: [CrossAddressStruct$1]): string; encodeFunctionData(functionFragment: "safeTransferFrom(address,address,uint256)", values: [AddressLike, AddressLike, BigNumberish]): string; encodeFunctionData(functionFragment: "safeTransferFrom(address,address,uint256,bytes)", values: [AddressLike, AddressLike, BigNumberish, BytesLike]): string; encodeFunctionData(functionFragment: "setApprovalForAll", values: [AddressLike, boolean]): string; encodeFunctionData(functionFragment: "setCollectionAccess", values: [BigNumberish]): string; encodeFunctionData(functionFragment: "setCollectionLimit", values: [CollectionLimitStruct]): string; encodeFunctionData(functionFragment: "setCollectionMintMode", values: [boolean]): string; encodeFunctionData(functionFragment: "setCollectionNesting", values: [CollectionNestingAndPermissionStruct]): string; encodeFunctionData(functionFragment: "setCollectionProperties", values: [PropertyStruct[]]): string; encodeFunctionData(functionFragment: "setCollectionSponsorCross", values: [CrossAddressStruct$1]): string; encodeFunctionData(functionFragment: "setProperties", values: [BigNumberish, PropertyStruct[]]): string; encodeFunctionData(functionFragment: "setTokenPropertyPermissions", values: [TokenPropertyPermissionStruct[]]): string; encodeFunctionData(functionFragment: "supportsInterface", values: [BytesLike]): string; encodeFunctionData(functionFragment: "symbol", values?: undefined): string; encodeFunctionData(functionFragment: "tokenByIndex", values: [BigNumberish]): string; encodeFunctionData(functionFragment: "tokenContractAddress", values: [BigNumberish]): string; encodeFunctionData(functionFragment: "tokenOfOwnerByIndex", values: [AddressLike, BigNumberish]): string; encodeFunctionData(functionFragment: "tokenPropertyPermissions", values?: undefined): string; encodeFunctionData(functionFragment: "tokenURI", values: [BigNumberish]): string; encodeFunctionData(functionFragment: "totalSupply", values?: undefined): string; encodeFunctionData(functionFragment: "transfer", values: [AddressLike, BigNumberish]): string; encodeFunctionData(functionFragment: "transferCross", values: [CrossAddressStruct$1, BigNumberish]): string; encodeFunctionData(functionFragment: "transferFrom", values: [AddressLike, AddressLike, BigNumberish]): string; encodeFunctionData(functionFragment: "transferFromCross", values: [CrossAddressStruct$1, CrossAddressStruct$1, BigNumberish]): string; encodeFunctionData(functionFragment: "uniqueCollectionType", values?: undefined): string; decodeFunctionResult(functionFragment: "addCollectionAdminCross", data: BytesLike): Result; decodeFunctionResult(functionFragment: "addToCollectionAllowListCross", data: BytesLike): Result; decodeFunctionResult(functionFragment: "allowlistedCross", data: BytesLike): Result; decodeFunctionResult(functionFragment: "approve", data: BytesLike): Result; decodeFunctionResult(functionFragment: "balanceOf", data: BytesLike): Result; decodeFunctionResult(functionFragment: "balanceOfCross", data: BytesLike): Result; decodeFunctionResult(functionFragment: "burn", data: BytesLike): Result; decodeFunctionResult(functionFragment: "burnFromCross", data: BytesLike): Result; decodeFunctionResult(functionFragment: "changeCollectionOwnerCross", data: BytesLike): Result; decodeFunctionResult(functionFragment: "collectionAdmins", data: BytesLike): Result; decodeFunctionResult(functionFragment: "collectionHelperAddress", data: BytesLike): Result; decodeFunctionResult(functionFragment: "collectionLimits", data: BytesLike): Result; decodeFunctionResult(functionFragment: "collectionNesting", data: BytesLike): Result; decodeFunctionResult(functionFragment: "collectionOwner", data: BytesLike): Result; decodeFunctionResult(functionFragment: "collectionProperties", data: BytesLike): Result; decodeFunctionResult(functionFragment: "collectionProperty", data: BytesLike): Result; decodeFunctionResult(functionFragment: "collectionSponsor", data: BytesLike): Result; decodeFunctionResult(functionFragment: "confirmCollectionSponsorship", data: BytesLike): Result; decodeFunctionResult(functionFragment: "contractAddress", data: BytesLike): Result; decodeFunctionResult(functionFragment: "deleteCollectionProperties", data: BytesLike): Result; decodeFunctionResult(functionFragment: "deleteProperties", data: BytesLike): Result; decodeFunctionResult(functionFragment: "description", data: BytesLike): Result; decodeFunctionResult(functionFragment: "getApproved", data: BytesLike): Result; decodeFunctionResult(functionFragment: "hasCollectionPendingSponsor", data: BytesLike): Result; decodeFunctionResult(functionFragment: "isApprovedForAll", data: BytesLike): Result; decodeFunctionResult(functionFragment: "isOwnerOrAdminCross", data: BytesLike): Result; decodeFunctionResult(functionFragment: "mint", data: BytesLike): Result; decodeFunctionResult(functionFragment: "mintBulkCross", data: BytesLike): Result; decodeFunctionResult(functionFragment: "mintCross", data: BytesLike): Result; decodeFunctionResult(functionFragment: "mintWithTokenURI", data: BytesLike): Result; decodeFunctionResult(functionFragment: "name", data: BytesLike): Result; decodeFunctionResult(functionFragment: "nextTokenId", data: BytesLike): Result; decodeFunctionResult(functionFragment: "ownerOf", data: BytesLike): Result; decodeFunctionResult(functionFragment: "ownerOfCross", data: BytesLike): Result; decodeFunctionResult(functionFragment: "properties", data: BytesLike): Result; decodeFunctionResult(functionFragment: "property", data: BytesLike): Result; decodeFunctionResult(functionFragment: "removeCollectionAdminCross", data: BytesLike): Result; decodeFunctionResult(functionFragment: "removeCollectionSponsor", data: BytesLike): Result; decodeFunctionResult(functionFragment: "removeFromCollectionAllowListCross", data: BytesLike): Result; decodeFunctionResult(functionFragment: "safeTransferFrom(address,address,uint256)", data: BytesLike): Result; decodeFunctionResult(functionFragment: "safeTransferFrom(address,address,uint256,bytes)", data: BytesLike): Result; decodeFunctionResult(functionFragment: "setApprovalForAll", data: BytesLike): Result; decodeFunctionResult(functionFragment: "setCollectionAccess", data: BytesLike): Result; decodeFunctionResult(functionFragment: "setCollectionLimit", data: BytesLike): Result; decodeFunctionResult(functionFragment: "setCollectionMintMode", data: BytesLike): Result; decodeFunctionResult(functionFragment: "setCollectionNesting", data: BytesLike): Result; decodeFunctionResult(functionFragment: "setCollectionProperties", data: BytesLike): Result; decodeFunctionResult(functionFragment: "setCollectionSponsorCross", data: BytesLike): Result; decodeFunctionResult(functionFragment: "setProperties", data: BytesLike): Result; decodeFunctionResult(functionFragment: "setTokenPropertyPermissions", data: BytesLike): Result; decodeFunctionResult(functionFragment: "supportsInterface", data: BytesLike): Result; decodeFunctionResult(functionFragment: "symbol", data: BytesLike): Result; decodeFunctionResult(functionFragment: "tokenByIndex", data: BytesLike): Result; decodeFunctionResult(functionFragment: "tokenContractAddress", data: BytesLike): Result; decodeFunctionResult(functionFragment: "tokenOfOwnerByIndex", data: BytesLike): Result; decodeFunctionResult(functionFragment: "tokenPropertyPermissions", data: BytesLike): Result; decodeFunctionResult(functionFragment: "tokenURI", data: BytesLike): Result; decodeFunctionResult(functionFragment: "totalSupply", data: BytesLike): Result; decodeFunctionResult(functionFragment: "transfer", data: BytesLike): Result; decodeFunctionResult(functionFragment: "transferCross", data: BytesLike): Result; decodeFunctionResult(functionFragment: "transferFrom", data: BytesLike): Result; decodeFunctionResult(functionFragment: "transferFromCross", data: BytesLike): Result; decodeFunctionResult(functionFragment: "uniqueCollectionType", data: BytesLike): Result; } declare namespace ApprovalEvent$1 { type InputTuple = [ owner: AddressLike, approved: AddressLike, tokenId: BigNumberish ]; type OutputTuple = [owner: string, approved: string, tokenId: bigint]; interface OutputObject { owner: string; approved: string; tokenId: bigint; } type Event = TypedContractEvent; type Filter = TypedDeferredTopicFilter; type Log = TypedEventLog; type LogDescription = TypedLogDescription; } declare namespace ApprovalForAllEvent { type InputTuple = [ owner: AddressLike, operator: AddressLike, approved: boolean ]; type OutputTuple = [ owner: string, operator: string, approved: boolean ]; interface OutputObject { owner: string; operator: string; approved: boolean; } type Event = TypedContractEvent; type Filter = TypedDeferredTopicFilter; type Log = TypedEventLog; type LogDescription = TypedLogDescription; } declare namespace TokenChangedEvent { type InputTuple = [tokenId: BigNumberish]; type OutputTuple = [tokenId: bigint]; interface OutputObject { tokenId: bigint; } type Event = TypedContractEvent; type Filter = TypedDeferredTopicFilter; type Log = TypedEventLog; type LogDescription = TypedLogDescription; } declare namespace TransferEvent$1 { type InputTuple = [ from: AddressLike, to: AddressLike, tokenId: BigNumberish ]; type OutputTuple = [from: string, to: string, tokenId: bigint]; interface OutputObject { from: string; to: string; tokenId: bigint; } type Event = TypedContractEvent; type Filter = TypedDeferredTopicFilter; type Log = TypedEventLog; type LogDescription = TypedLogDescription; } interface UniqueRefungible extends BaseContract { connect(runner?: ContractRunner | null): UniqueRefungible; waitForDeployment(): Promise; interface: UniqueRefungibleInterface; queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; on(event: TCEvent, listener: TypedListener): Promise; on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; once(event: TCEvent, listener: TypedListener): Promise; once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; listeners(event: TCEvent): Promise>>; listeners(eventName?: string): Promise>; removeAllListeners(event?: TCEvent): Promise; addCollectionAdminCross: TypedContractMethod<[ newAdmin: CrossAddressStruct$1 ], [ void ], "nonpayable">; addToCollectionAllowListCross: TypedContractMethod<[ user: CrossAddressStruct$1 ], [ void ], "nonpayable">; allowlistedCross: TypedContractMethod<[ user: CrossAddressStruct$1 ], [ boolean ], "view">; approve: TypedContractMethod<[ approved: AddressLike, tokenId: BigNumberish ], [ void ], "nonpayable">; balanceOf: TypedContractMethod<[owner: AddressLike], [bigint], "view">; balanceOfCross: TypedContractMethod<[ owner: CrossAddressStruct$1 ], [ bigint ], "view">; burn: TypedContractMethod<[tokenId: BigNumberish], [void], "nonpayable">; burnFromCross: TypedContractMethod<[ from: CrossAddressStruct$1, tokenId: BigNumberish ], [ void ], "nonpayable">; changeCollectionOwnerCross: TypedContractMethod<[ newOwner: CrossAddressStruct$1 ], [ void ], "nonpayable">; collectionAdmins: TypedContractMethod<[ ], [ CrossAddressStructOutput[] ], "view">; collectionHelperAddress: TypedContractMethod<[], [string], "view">; collectionLimits: TypedContractMethod<[ ], [ CollectionLimitStructOutput[] ], "view">; collectionNesting: TypedContractMethod<[ ], [ CollectionNestingAndPermissionStructOutput ], "view">; collectionOwner: TypedContractMethod<[], [CrossAddressStructOutput], "view">; collectionProperties: TypedContractMethod<[ keys: string[] ], [ PropertyStructOutput[] ], "view">; collectionProperty: TypedContractMethod<[key: string], [string], "view">; collectionSponsor: TypedContractMethod<[ ], [ CrossAddressStructOutput ], "view">; confirmCollectionSponsorship: TypedContractMethod<[], [void], "nonpayable">; contractAddress: TypedContractMethod<[], [string], "view">; deleteCollectionProperties: TypedContractMethod<[ keys: string[] ], [ void ], "nonpayable">; deleteProperties: TypedContractMethod<[ tokenId: BigNumberish, keys: string[] ], [ void ], "nonpayable">; description: TypedContractMethod<[], [string], "view">; getApproved: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; hasCollectionPendingSponsor: TypedContractMethod<[], [boolean], "view">; isApprovedForAll: TypedContractMethod<[ owner: AddressLike, operator: AddressLike ], [ boolean ], "view">; isOwnerOrAdminCross: TypedContractMethod<[ user: CrossAddressStruct$1 ], [ boolean ], "view">; mint: TypedContractMethod<[to: AddressLike], [bigint], "nonpayable">; mintBulkCross: TypedContractMethod<[ tokenProperties: MintTokenDataStruct[] ], [ boolean ], "nonpayable">; mintCross: TypedContractMethod<[ to: CrossAddressStruct$1, properties: PropertyStruct[] ], [ bigint ], "nonpayable">; mintWithTokenURI: TypedContractMethod<[ to: AddressLike, tokenUri: string ], [ bigint ], "nonpayable">; name: TypedContractMethod<[], [string], "view">; nextTokenId: TypedContractMethod<[], [bigint], "view">; ownerOf: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; ownerOfCross: TypedContractMethod<[ tokenId: BigNumberish ], [ CrossAddressStructOutput ], "view">; properties: TypedContractMethod<[ tokenId: BigNumberish, keys: string[] ], [ PropertyStructOutput[] ], "view">; property: TypedContractMethod<[ tokenId: BigNumberish, key: string ], [ string ], "view">; removeCollectionAdminCross: TypedContractMethod<[ admin: CrossAddressStruct$1 ], [ void ], "nonpayable">; removeCollectionSponsor: TypedContractMethod<[], [void], "nonpayable">; removeFromCollectionAllowListCross: TypedContractMethod<[ user: CrossAddressStruct$1 ], [ void ], "nonpayable">; "safeTransferFrom(address,address,uint256)": TypedContractMethod<[ from: AddressLike, to: AddressLike, tokenId: BigNumberish ], [ void ], "nonpayable">; "safeTransferFrom(address,address,uint256,bytes)": TypedContractMethod<[ from: AddressLike, to: AddressLike, tokenId: BigNumberish, data: BytesLike ], [ void ], "nonpayable">; setApprovalForAll: TypedContractMethod<[ operator: AddressLike, approved: boolean ], [ void ], "nonpayable">; setCollectionAccess: TypedContractMethod<[ mode: BigNumberish ], [ void ], "nonpayable">; setCollectionLimit: TypedContractMethod<[ limit: CollectionLimitStruct ], [ void ], "nonpayable">; setCollectionMintMode: TypedContractMethod<[ mode: boolean ], [ void ], "nonpayable">; setCollectionNesting: TypedContractMethod<[ collectionNestingAndPermissions: CollectionNestingAndPermissionStruct ], [ void ], "nonpayable">; setCollectionProperties: TypedContractMethod<[ properties: PropertyStruct[] ], [ void ], "nonpayable">; setCollectionSponsorCross: TypedContractMethod<[ sponsor: CrossAddressStruct$1 ], [ void ], "nonpayable">; setProperties: TypedContractMethod<[ tokenId: BigNumberish, properties: PropertyStruct[] ], [ void ], "nonpayable">; setTokenPropertyPermissions: TypedContractMethod<[ permissions: TokenPropertyPermissionStruct[] ], [ void ], "nonpayable">; supportsInterface: TypedContractMethod<[ interfaceID: BytesLike ], [ boolean ], "view">; symbol: TypedContractMethod<[], [string], "view">; tokenByIndex: TypedContractMethod<[index: BigNumberish], [bigint], "view">; tokenContractAddress: TypedContractMethod<[ token: BigNumberish ], [ string ], "view">; tokenOfOwnerByIndex: TypedContractMethod<[ owner: AddressLike, index: BigNumberish ], [ bigint ], "view">; tokenPropertyPermissions: TypedContractMethod<[ ], [ TokenPropertyPermissionStructOutput[] ], "view">; tokenURI: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; totalSupply: TypedContractMethod<[], [bigint], "view">; transfer: TypedContractMethod<[ to: AddressLike, tokenId: BigNumberish ], [ void ], "nonpayable">; transferCross: TypedContractMethod<[ to: CrossAddressStruct$1, tokenId: BigNumberish ], [ void ], "nonpayable">; transferFrom: TypedContractMethod<[ from: AddressLike, to: AddressLike, tokenId: BigNumberish ], [ void ], "nonpayable">; transferFromCross: TypedContractMethod<[ from: CrossAddressStruct$1, to: CrossAddressStruct$1, tokenId: BigNumberish ], [ void ], "nonpayable">; uniqueCollectionType: TypedContractMethod<[], [string], "view">; getFunction(key: string | FunctionFragment): T; getFunction(nameOrSignature: "addCollectionAdminCross"): TypedContractMethod<[newAdmin: CrossAddressStruct$1], [void], "nonpayable">; getFunction(nameOrSignature: "addToCollectionAllowListCross"): TypedContractMethod<[user: CrossAddressStruct$1], [void], "nonpayable">; getFunction(nameOrSignature: "allowlistedCross"): TypedContractMethod<[user: CrossAddressStruct$1], [boolean], "view">; getFunction(nameOrSignature: "approve"): TypedContractMethod<[ approved: AddressLike, tokenId: BigNumberish ], [ void ], "nonpayable">; getFunction(nameOrSignature: "balanceOf"): TypedContractMethod<[owner: AddressLike], [bigint], "view">; getFunction(nameOrSignature: "balanceOfCross"): TypedContractMethod<[owner: CrossAddressStruct$1], [bigint], "view">; getFunction(nameOrSignature: "burn"): TypedContractMethod<[tokenId: BigNumberish], [void], "nonpayable">; getFunction(nameOrSignature: "burnFromCross"): TypedContractMethod<[ from: CrossAddressStruct$1, tokenId: BigNumberish ], [ void ], "nonpayable">; getFunction(nameOrSignature: "changeCollectionOwnerCross"): TypedContractMethod<[newOwner: CrossAddressStruct$1], [void], "nonpayable">; getFunction(nameOrSignature: "collectionAdmins"): TypedContractMethod<[], [CrossAddressStructOutput[]], "view">; getFunction(nameOrSignature: "collectionHelperAddress"): TypedContractMethod<[], [string], "view">; getFunction(nameOrSignature: "collectionLimits"): TypedContractMethod<[], [CollectionLimitStructOutput[]], "view">; getFunction(nameOrSignature: "collectionNesting"): TypedContractMethod<[ ], [ CollectionNestingAndPermissionStructOutput ], "view">; getFunction(nameOrSignature: "collectionOwner"): TypedContractMethod<[], [CrossAddressStructOutput], "view">; getFunction(nameOrSignature: "collectionProperties"): TypedContractMethod<[keys: string[]], [PropertyStructOutput[]], "view">; getFunction(nameOrSignature: "collectionProperty"): TypedContractMethod<[key: string], [string], "view">; getFunction(nameOrSignature: "collectionSponsor"): TypedContractMethod<[], [CrossAddressStructOutput], "view">; getFunction(nameOrSignature: "confirmCollectionSponsorship"): TypedContractMethod<[], [void], "nonpayable">; getFunction(nameOrSignature: "contractAddress"): TypedContractMethod<[], [string], "view">; getFunction(nameOrSignature: "deleteCollectionProperties"): TypedContractMethod<[keys: string[]], [void], "nonpayable">; getFunction(nameOrSignature: "deleteProperties"): TypedContractMethod<[ tokenId: BigNumberish, keys: string[] ], [ void ], "nonpayable">; getFunction(nameOrSignature: "description"): TypedContractMethod<[], [string], "view">; getFunction(nameOrSignature: "getApproved"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; getFunction(nameOrSignature: "hasCollectionPendingSponsor"): TypedContractMethod<[], [boolean], "view">; getFunction(nameOrSignature: "isApprovedForAll"): TypedContractMethod<[ owner: AddressLike, operator: AddressLike ], [ boolean ], "view">; getFunction(nameOrSignature: "isOwnerOrAdminCross"): TypedContractMethod<[user: CrossAddressStruct$1], [boolean], "view">; getFunction(nameOrSignature: "mint"): TypedContractMethod<[to: AddressLike], [bigint], "nonpayable">; getFunction(nameOrSignature: "mintBulkCross"): TypedContractMethod<[ tokenProperties: MintTokenDataStruct[] ], [ boolean ], "nonpayable">; getFunction(nameOrSignature: "mintCross"): TypedContractMethod<[ to: CrossAddressStruct$1, properties: PropertyStruct[] ], [ bigint ], "nonpayable">; getFunction(nameOrSignature: "mintWithTokenURI"): TypedContractMethod<[ to: AddressLike, tokenUri: string ], [ bigint ], "nonpayable">; getFunction(nameOrSignature: "name"): TypedContractMethod<[], [string], "view">; getFunction(nameOrSignature: "nextTokenId"): TypedContractMethod<[], [bigint], "view">; getFunction(nameOrSignature: "ownerOf"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; getFunction(nameOrSignature: "ownerOfCross"): TypedContractMethod<[ tokenId: BigNumberish ], [ CrossAddressStructOutput ], "view">; getFunction(nameOrSignature: "properties"): TypedContractMethod<[ tokenId: BigNumberish, keys: string[] ], [ PropertyStructOutput[] ], "view">; getFunction(nameOrSignature: "property"): TypedContractMethod<[ tokenId: BigNumberish, key: string ], [ string ], "view">; getFunction(nameOrSignature: "removeCollectionAdminCross"): TypedContractMethod<[admin: CrossAddressStruct$1], [void], "nonpayable">; getFunction(nameOrSignature: "removeCollectionSponsor"): TypedContractMethod<[], [void], "nonpayable">; getFunction(nameOrSignature: "removeFromCollectionAllowListCross"): TypedContractMethod<[user: CrossAddressStruct$1], [void], "nonpayable">; getFunction(nameOrSignature: "safeTransferFrom(address,address,uint256)"): TypedContractMethod<[ from: AddressLike, to: AddressLike, tokenId: BigNumberish ], [ void ], "nonpayable">; getFunction(nameOrSignature: "safeTransferFrom(address,address,uint256,bytes)"): TypedContractMethod<[ from: AddressLike, to: AddressLike, tokenId: BigNumberish, data: BytesLike ], [ void ], "nonpayable">; getFunction(nameOrSignature: "setApprovalForAll"): TypedContractMethod<[ operator: AddressLike, approved: boolean ], [ void ], "nonpayable">; getFunction(nameOrSignature: "setCollectionAccess"): TypedContractMethod<[mode: BigNumberish], [void], "nonpayable">; getFunction(nameOrSignature: "setCollectionLimit"): TypedContractMethod<[limit: CollectionLimitStruct], [void], "nonpayable">; getFunction(nameOrSignature: "setCollectionMintMode"): TypedContractMethod<[mode: boolean], [void], "nonpayable">; getFunction(nameOrSignature: "setCollectionNesting"): TypedContractMethod<[ collectionNestingAndPermissions: CollectionNestingAndPermissionStruct ], [ void ], "nonpayable">; getFunction(nameOrSignature: "setCollectionProperties"): TypedContractMethod<[properties: PropertyStruct[]], [void], "nonpayable">; getFunction(nameOrSignature: "setCollectionSponsorCross"): TypedContractMethod<[sponsor: CrossAddressStruct$1], [void], "nonpayable">; getFunction(nameOrSignature: "setProperties"): TypedContractMethod<[ tokenId: BigNumberish, properties: PropertyStruct[] ], [ void ], "nonpayable">; getFunction(nameOrSignature: "setTokenPropertyPermissions"): TypedContractMethod<[ permissions: TokenPropertyPermissionStruct[] ], [ void ], "nonpayable">; getFunction(nameOrSignature: "supportsInterface"): TypedContractMethod<[interfaceID: BytesLike], [boolean], "view">; getFunction(nameOrSignature: "symbol"): TypedContractMethod<[], [string], "view">; getFunction(nameOrSignature: "tokenByIndex"): TypedContractMethod<[index: BigNumberish], [bigint], "view">; getFunction(nameOrSignature: "tokenContractAddress"): TypedContractMethod<[token: BigNumberish], [string], "view">; getFunction(nameOrSignature: "tokenOfOwnerByIndex"): TypedContractMethod<[ owner: AddressLike, index: BigNumberish ], [ bigint ], "view">; getFunction(nameOrSignature: "tokenPropertyPermissions"): TypedContractMethod<[], [TokenPropertyPermissionStructOutput[]], "view">; getFunction(nameOrSignature: "tokenURI"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; getFunction(nameOrSignature: "totalSupply"): TypedContractMethod<[], [bigint], "view">; getFunction(nameOrSignature: "transfer"): TypedContractMethod<[ to: AddressLike, tokenId: BigNumberish ], [ void ], "nonpayable">; getFunction(nameOrSignature: "transferCross"): TypedContractMethod<[ to: CrossAddressStruct$1, tokenId: BigNumberish ], [ void ], "nonpayable">; getFunction(nameOrSignature: "transferFrom"): TypedContractMethod<[ from: AddressLike, to: AddressLike, tokenId: BigNumberish ], [ void ], "nonpayable">; getFunction(nameOrSignature: "transferFromCross"): TypedContractMethod<[ from: CrossAddressStruct$1, to: CrossAddressStruct$1, tokenId: BigNumberish ], [ void ], "nonpayable">; getFunction(nameOrSignature: "uniqueCollectionType"): TypedContractMethod<[], [string], "view">; getEvent(key: "Approval"): TypedContractEvent; getEvent(key: "ApprovalForAll"): TypedContractEvent; getEvent(key: "TokenChanged"): TypedContractEvent; getEvent(key: "Transfer"): TypedContractEvent; filters: { "Approval(address,address,uint256)": TypedContractEvent; Approval: TypedContractEvent; "ApprovalForAll(address,address,bool)": TypedContractEvent; ApprovalForAll: TypedContractEvent; "TokenChanged(uint256)": TypedContractEvent; TokenChanged: TypedContractEvent; "Transfer(address,address,uint256)": TypedContractEvent; Transfer: TypedContractEvent; }; } type CrossAddressStruct = { eth: AddressLike; sub: BigNumberish; }; interface UniqueRefungibleTokenInterface extends Interface { getFunction(nameOrSignature: "allowance" | "allowanceCross" | "approve" | "approveCross" | "balanceOf" | "balanceOfCross" | "burnFromCross" | "decimals" | "name" | "parentToken" | "parentTokenId" | "repartition" | "supportsInterface" | "symbol" | "totalSupply" | "transfer" | "transferCross" | "transferFrom" | "transferFromCross"): FunctionFragment; getEvent(nameOrSignatureOrTopic: "Approval" | "Transfer"): EventFragment; encodeFunctionData(functionFragment: "allowance", values: [AddressLike, AddressLike]): string; encodeFunctionData(functionFragment: "allowanceCross", values: [CrossAddressStruct, CrossAddressStruct]): string; encodeFunctionData(functionFragment: "approve", values: [AddressLike, BigNumberish]): string; encodeFunctionData(functionFragment: "approveCross", values: [CrossAddressStruct, BigNumberish]): string; encodeFunctionData(functionFragment: "balanceOf", values: [AddressLike]): string; encodeFunctionData(functionFragment: "balanceOfCross", values: [CrossAddressStruct]): string; encodeFunctionData(functionFragment: "burnFromCross", values: [CrossAddressStruct, BigNumberish]): string; encodeFunctionData(functionFragment: "decimals", values?: undefined): string; encodeFunctionData(functionFragment: "name", values?: undefined): string; encodeFunctionData(functionFragment: "parentToken", values?: undefined): string; encodeFunctionData(functionFragment: "parentTokenId", values?: undefined): string; encodeFunctionData(functionFragment: "repartition", values: [BigNumberish]): string; encodeFunctionData(functionFragment: "supportsInterface", values: [BytesLike]): string; encodeFunctionData(functionFragment: "symbol", values?: undefined): string; encodeFunctionData(functionFragment: "totalSupply", values?: undefined): string; encodeFunctionData(functionFragment: "transfer", values: [AddressLike, BigNumberish]): string; encodeFunctionData(functionFragment: "transferCross", values: [CrossAddressStruct, BigNumberish]): string; encodeFunctionData(functionFragment: "transferFrom", values: [AddressLike, AddressLike, BigNumberish]): string; encodeFunctionData(functionFragment: "transferFromCross", values: [CrossAddressStruct, CrossAddressStruct, BigNumberish]): string; decodeFunctionResult(functionFragment: "allowance", data: BytesLike): Result; decodeFunctionResult(functionFragment: "allowanceCross", data: BytesLike): Result; decodeFunctionResult(functionFragment: "approve", data: BytesLike): Result; decodeFunctionResult(functionFragment: "approveCross", data: BytesLike): Result; decodeFunctionResult(functionFragment: "balanceOf", data: BytesLike): Result; decodeFunctionResult(functionFragment: "balanceOfCross", data: BytesLike): Result; decodeFunctionResult(functionFragment: "burnFromCross", data: BytesLike): Result; decodeFunctionResult(functionFragment: "decimals", data: BytesLike): Result; decodeFunctionResult(functionFragment: "name", data: BytesLike): Result; decodeFunctionResult(functionFragment: "parentToken", data: BytesLike): Result; decodeFunctionResult(functionFragment: "parentTokenId", data: BytesLike): Result; decodeFunctionResult(functionFragment: "repartition", data: BytesLike): Result; decodeFunctionResult(functionFragment: "supportsInterface", data: BytesLike): Result; decodeFunctionResult(functionFragment: "symbol", data: BytesLike): Result; decodeFunctionResult(functionFragment: "totalSupply", data: BytesLike): Result; decodeFunctionResult(functionFragment: "transfer", data: BytesLike): Result; decodeFunctionResult(functionFragment: "transferCross", data: BytesLike): Result; decodeFunctionResult(functionFragment: "transferFrom", data: BytesLike): Result; decodeFunctionResult(functionFragment: "transferFromCross", data: BytesLike): Result; } declare namespace ApprovalEvent { type InputTuple = [ owner: AddressLike, spender: AddressLike, value: BigNumberish ]; type OutputTuple = [owner: string, spender: string, value: bigint]; interface OutputObject { owner: string; spender: string; value: bigint; } type Event = TypedContractEvent; type Filter = TypedDeferredTopicFilter; type Log = TypedEventLog; type LogDescription = TypedLogDescription; } declare namespace TransferEvent { type InputTuple = [ from: AddressLike, to: AddressLike, value: BigNumberish ]; type OutputTuple = [from: string, to: string, value: bigint]; interface OutputObject { from: string; to: string; value: bigint; } type Event = TypedContractEvent; type Filter = TypedDeferredTopicFilter; type Log = TypedEventLog; type LogDescription = TypedLogDescription; } interface UniqueRefungibleToken extends BaseContract { connect(runner?: ContractRunner | null): UniqueRefungibleToken; waitForDeployment(): Promise; interface: UniqueRefungibleTokenInterface; queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; on(event: TCEvent, listener: TypedListener): Promise; on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; once(event: TCEvent, listener: TypedListener): Promise; once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; listeners(event: TCEvent): Promise>>; listeners(eventName?: string): Promise>; removeAllListeners(event?: TCEvent): Promise; allowance: TypedContractMethod<[ owner: AddressLike, spender: AddressLike ], [ bigint ], "view">; allowanceCross: TypedContractMethod<[ owner: CrossAddressStruct, spender: CrossAddressStruct ], [ bigint ], "view">; approve: TypedContractMethod<[ spender: AddressLike, amount: BigNumberish ], [ boolean ], "nonpayable">; approveCross: TypedContractMethod<[ spender: CrossAddressStruct, amount: BigNumberish ], [ boolean ], "nonpayable">; balanceOf: TypedContractMethod<[owner: AddressLike], [bigint], "view">; balanceOfCross: TypedContractMethod<[ owner: CrossAddressStruct ], [ bigint ], "view">; burnFromCross: TypedContractMethod<[ from: CrossAddressStruct, amount: BigNumberish ], [ boolean ], "nonpayable">; decimals: TypedContractMethod<[], [bigint], "view">; name: TypedContractMethod<[], [string], "view">; parentToken: TypedContractMethod<[], [string], "view">; parentTokenId: TypedContractMethod<[], [bigint], "view">; repartition: TypedContractMethod<[ amount: BigNumberish ], [ boolean ], "nonpayable">; supportsInterface: TypedContractMethod<[ interfaceID: BytesLike ], [ boolean ], "view">; symbol: TypedContractMethod<[], [string], "view">; totalSupply: TypedContractMethod<[], [bigint], "view">; transfer: TypedContractMethod<[ to: AddressLike, amount: BigNumberish ], [ boolean ], "nonpayable">; transferCross: TypedContractMethod<[ to: CrossAddressStruct, amount: BigNumberish ], [ boolean ], "nonpayable">; transferFrom: TypedContractMethod<[ from: AddressLike, to: AddressLike, amount: BigNumberish ], [ boolean ], "nonpayable">; transferFromCross: TypedContractMethod<[ from: CrossAddressStruct, to: CrossAddressStruct, amount: BigNumberish ], [ boolean ], "nonpayable">; getFunction(key: string | FunctionFragment): T; getFunction(nameOrSignature: "allowance"): TypedContractMethod<[ owner: AddressLike, spender: AddressLike ], [ bigint ], "view">; getFunction(nameOrSignature: "allowanceCross"): TypedContractMethod<[ owner: CrossAddressStruct, spender: CrossAddressStruct ], [ bigint ], "view">; getFunction(nameOrSignature: "approve"): TypedContractMethod<[ spender: AddressLike, amount: BigNumberish ], [ boolean ], "nonpayable">; getFunction(nameOrSignature: "approveCross"): TypedContractMethod<[ spender: CrossAddressStruct, amount: BigNumberish ], [ boolean ], "nonpayable">; getFunction(nameOrSignature: "balanceOf"): TypedContractMethod<[owner: AddressLike], [bigint], "view">; getFunction(nameOrSignature: "balanceOfCross"): TypedContractMethod<[owner: CrossAddressStruct], [bigint], "view">; getFunction(nameOrSignature: "burnFromCross"): TypedContractMethod<[ from: CrossAddressStruct, amount: BigNumberish ], [ boolean ], "nonpayable">; getFunction(nameOrSignature: "decimals"): TypedContractMethod<[], [bigint], "view">; getFunction(nameOrSignature: "name"): TypedContractMethod<[], [string], "view">; getFunction(nameOrSignature: "parentToken"): TypedContractMethod<[], [string], "view">; getFunction(nameOrSignature: "parentTokenId"): TypedContractMethod<[], [bigint], "view">; getFunction(nameOrSignature: "repartition"): TypedContractMethod<[amount: BigNumberish], [boolean], "nonpayable">; getFunction(nameOrSignature: "supportsInterface"): TypedContractMethod<[interfaceID: BytesLike], [boolean], "view">; getFunction(nameOrSignature: "symbol"): TypedContractMethod<[], [string], "view">; getFunction(nameOrSignature: "totalSupply"): TypedContractMethod<[], [bigint], "view">; getFunction(nameOrSignature: "transfer"): TypedContractMethod<[ to: AddressLike, amount: BigNumberish ], [ boolean ], "nonpayable">; getFunction(nameOrSignature: "transferCross"): TypedContractMethod<[ to: CrossAddressStruct, amount: BigNumberish ], [ boolean ], "nonpayable">; getFunction(nameOrSignature: "transferFrom"): TypedContractMethod<[ from: AddressLike, to: AddressLike, amount: BigNumberish ], [ boolean ], "nonpayable">; getFunction(nameOrSignature: "transferFromCross"): TypedContractMethod<[ from: CrossAddressStruct, to: CrossAddressStruct, amount: BigNumberish ], [ boolean ], "nonpayable">; getEvent(key: "Approval"): TypedContractEvent; getEvent(key: "Transfer"): TypedContractEvent; filters: { "Approval(address,address,uint256)": TypedContractEvent; Approval: TypedContractEvent; "Transfer(address,address,uint256)": TypedContractEvent; Transfer: TypedContractEvent; }; } type Ethers = typeof ethers; type SignerOrProvider = Signer | ethers.Provider | ethers.Wallet; type RefungibleTokenCollectionAndTokenId = { collectionId: number | string; tokenId: number; }; declare const CollectionHelpersFactory: (signerOrProvider: SignerOrProvider, ethers?: Ethers) => Promise; declare const ContractHelpersFactory: (signerOrProvider: SignerOrProvider, ethers?: Ethers) => Promise; declare const UniqueNFTFactory: (collectionIdOrAddress: number | string, signerOrProvider: SignerOrProvider, ethers?: Ethers) => Promise; declare const UniqueFungibleFactory: (collectionIdOrAddress: number | string, signerOrProvider: SignerOrProvider, ethers?: Ethers) => Promise; declare const UniqueRefungibleFactory: (collectionIdOrAddress: number | string, signerOrProvider: SignerOrProvider, ethers?: Ethers) => Promise; declare const UniqueRefungibleTokenFactory: (tokenIdOrAddress: RefungibleTokenCollectionAndTokenId | string, signerOrProvider: SignerOrProvider, ethers?: Ethers) => Promise; declare const parseEthersV6TxReceipt: >(tx: ContractTransactionReceipt, options?: { decimals: number; }) => { readonly tx: ethers.ContractTransactionReceipt; from: string; to: string | null; rawPrice: bigint; price: number; rawEvents: (ethers.Log | ethers.EventLog)[]; events: ParsedEvents; gasUsed: bigint; cumulativeGasUsed: bigint; effectiveGasPrice: bigint; }; export { CollectionHelpers, CollectionHelpersFactory, ContractHelpers, ContractHelpersFactory, RefungibleTokenCollectionAndTokenId, UniqueFungible, UniqueFungibleFactory, UniqueNFT, UniqueNFTFactory, UniqueRefungible, UniqueRefungibleFactory, UniqueRefungibleToken, UniqueRefungibleTokenFactory, parseEthersV6TxReceipt };