@funded-labs/dab-js
Version:
JS adapter for DAB
14 lines (13 loc) • 637 B
TypeScript
import { HttpAgent } from '@dfinity/agent';
import { Principal } from '@dfinity/principal';
import { NFTCollection, NFTDetails } from '../../interfaces/nft';
export default abstract class NFT<Tid = number, Tindex = bigint> {
abstract standard: string;
agent: HttpAgent;
canisterId: string;
constructor(canisterId: string, agent: HttpAgent);
abstract getUserTokens(principal: Principal): Promise<NFTDetails<Tindex>[]>;
abstract transfer(principal: Principal, tokenIndex: Tid): Promise<void>;
abstract getMetadata(): Promise<NFTCollection>;
abstract details(tokenIndex: Tid): Promise<NFTDetails<Tindex>>;
}