Description:
The contract has NFT query functions (query_nft_metadata and query_nft_owner at nft.rs:247-254) but the SDK does not expose them. These functions are essential for NFT marketplace features.
query_nft_metadata(env, invoice_id) returns Option<InvoiceNftMetadata> containing:
invoice_id: u64
amount: i128
due_date: u32
discount_rate: u32
token: Address
owner: Address
minted_at: u32
query_nft_owner(env, invoice_id) returns Option<Address>.
Why it matters: NFT features require querying metadata and ownership.
Acceptance Criteria:
Relevant Files: contracts/invoice_liquidity/src/nft.rs:247-254, sdk/src/index.ts
Description:
The contract has NFT query functions (
query_nft_metadataandquery_nft_owneratnft.rs:247-254) but the SDK does not expose them. These functions are essential for NFT marketplace features.query_nft_metadata(env, invoice_id)returnsOption<InvoiceNftMetadata>containing:invoice_id: u64amount: i128due_date: u32discount_rate: u32token: Addressowner: Addressminted_at: u32query_nft_owner(env, invoice_id)returnsOption<Address>.Why it matters: NFT features require querying metadata and ownership.
Acceptance Criteria:
getNftMetadata(invoiceId)returningInvoiceNftMetadata | nullgetNftOwner(invoiceId)returningstring | nullRelevant Files:
contracts/invoice_liquidity/src/nft.rs:247-254,sdk/src/index.ts