UNPKG

meta-contract

Version:

Meta Contract SDK

43 lines (42 loc) 1.78 kB
import * as mvc from '../../mvc'; import { ContractAdapter } from '../../common/ContractAdapter'; import { Bytes, FunctionCall, Int, Ripemd160, Sig, SigHashPreimage } from '../../scryptlib'; import * as nftProto from '../contract-proto/nft.proto'; export declare class NftGenesis extends ContractAdapter { constuctParams: { issuerPubKey: mvc.PublicKey; }; private _formatedDataPart; constructor(constuctParams: { issuerPubKey: mvc.PublicKey; }); clone(): NftGenesis; setFormatedDataPart(dataPart: nftProto.FormatedDataPart): void; getFormatedDataPart(): nftProto.FormatedDataPart; setFormatedDataPartFromLockingScript(script: mvc.Script): void; isFirstGenesis(): boolean; unlock({ txPreimage, sig, rabinMsg, rabinPaddingArray, rabinSigArray, rabinPubKeyIndexArray, rabinPubKeyVerifyArray, rabinPubKeyHashArray, genesisSatoshis, nftScript, nftSatoshis, changeAddress, changeSatoshis, opReturnScript, }: { txPreimage: SigHashPreimage; sig: Sig; rabinMsg: Bytes; rabinPaddingArray: Bytes[]; rabinSigArray: Int[]; rabinPubKeyIndexArray: number[]; rabinPubKeyVerifyArray: Int[]; rabinPubKeyHashArray: Bytes; genesisSatoshis: number; nftScript: Bytes; nftSatoshis: number; changeAddress: Ripemd160; changeSatoshis: number; opReturnScript: Bytes; }): FunctionCall; } export declare class NftGenesisFactory { static lockingScriptSize: number; static getLockingScriptSize(): number; static createContract(issuerPubKey: mvc.PublicKey): NftGenesis; static getDummyInstance(): NftGenesis; static calLockingScriptSize(): number; static calUnlockingScriptSize(opreturnData: any): number; }