export interface ISignatureGenerator { getSignature(privateKey: string): Promise; getBytes(): Promise; getExactBytes(fieldName: string): Promise; } export interface ISignatureGeneratorConstructor { new(data: T): ISignatureGenerator; } export interface IDEFAULT_PROPS { senderPublicKey: string; timestamp: number; } export interface ITRANSFER_PROPS extends IDEFAULT_PROPS { amount: string; fee: string; recipient: string; attachment: string; } export interface ILEASE_PROPS extends IDEFAULT_PROPS { recipient: string; amount: string; fee: string; } export interface ICANCEL_LEASING_PROPS extends IDEFAULT_PROPS { fee: string; transactionId: string; } export interface IMASS_TRANSFER_PROPS extends IDEFAULT_PROPS { assetId: string; transfers: Array; fee: string; attachment: string; } export interface IDATA_PROPS extends IDEFAULT_PROPS { data: Array; fee: string; } export interface IANCHOR_PROPS extends IDEFAULT_PROPS { anchors: Array; fee: string; } export interface IASSOCIATION_PROPS extends IDEFAULT_PROPS { hash?: string; party: string; associationType: number; fee: string; } export interface IMASS_TRANSFER_TRANSFERS { recipient: string; amount: string; } export interface ISET_SCRIPT_PROPS extends IDEFAULT_PROPS { script: string; chainId: number; fee: string; } export interface ISPONSOR_PROPS extends IDEFAULT_PROPS { chainId: number; recipient: string; fee: string; } export interface ICANCEL_SPONSOR_PROPS extends IDEFAULT_PROPS { chainId: number; recipient: string; fee: string; } export interface IDATA_ENTRY { key: string; type: number | string; value: any; } export type TTX_NUMBER_MAP = { 4: ISignatureGeneratorConstructor; 7: ISignatureGeneratorConstructor; 8: ISignatureGeneratorConstructor; 9: ISignatureGeneratorConstructor; 11: ISignatureGeneratorConstructor; 12: ISignatureGeneratorConstructor; 13: ISignatureGeneratorConstructor; 15: ISignatureGeneratorConstructor; 16: ISignatureGeneratorConstructor; 17: ISignatureGeneratorConstructor; 18: ISignatureGeneratorConstructor; 19: ISignatureGeneratorConstructor; } export type TTX_TYPE_MAP = { transfer: ISignatureGeneratorConstructor; exchange: ISignatureGeneratorConstructor; lease: ISignatureGeneratorConstructor; cancelLeasing: ISignatureGeneratorConstructor; massTransfer: ISignatureGeneratorConstructor; data: ISignatureGeneratorConstructor; setScript: ISignatureGeneratorConstructor; anchor: ISignatureGeneratorConstructor; invokeAssociation: ISignatureGeneratorConstructor; revokeAssociation: ISignatureGeneratorConstructor; sponsor: ISignatureGeneratorConstructor; cancelSponsor: ISignatureGeneratorConstructor; }