/// <reference types="node" />
import { NftGenesis } from '../mcp01/contract-factory/nftGenesis';
import { Address, PrivateKey, Transaction } from '../mvc';
import { Bytes } from '../scryptlib';
type Purse = {
    privateKey?: PrivateKey;
    address: Address;
};
export declare function createNftGenesisContract({ totalSupply, address, }: {
    totalSupply: string;
    address: Address;
}): NftGenesis;
export declare function createNftMintContract({ version, genesisHash, genesisContract, metaTxId, metaOutputIndex, sensibleID, receiverAddress, unlockContractCodeHashArray, }: {
    version?: number;
    genesisHash: string;
    genesisContract: NftGenesis;
    metaTxId: string;
    metaOutputIndex: number;
    sensibleID: any;
    receiverAddress: Address;
    unlockContractCodeHashArray: Bytes[];
}): import("../mcp01/contract-factory/nft").Nft;
export declare function rebuildNftLockingScript(nftUtxo: any, receiverAddress: Address): Buffer;
export declare function getGenesisIdentifiers({ version, genesisTx, purse, transferCheckCodeHashArray, unlockContractCodeHashArray, type, }: {
    version?: number;
    genesisTx: Transaction;
    purse: Purse;
    transferCheckCodeHashArray?: Bytes[];
    unlockContractCodeHashArray: Bytes[];
    type: string;
}): {
    codehash: string;
    genesis: string;
    sensibleId: string;
};
export {};
