import { HexString, TxnBuilderTypes, Types } from "aptos"; import type { SDK } from "../sdk"; import { APTTransferArgs, CoinRegisterArgs, CoinTransferArgs, EntryFunctionArgs, MomentumSafeEvent, MomentumSafeInfo, MSafeTxnInfo, PaginationArgs, RegisterNFTArgs, RevertArgs, TransactionType, TransferNftArgs } from "../types"; import { AptosEntryTxnBuilder, MSafeStatus, Options } from "../utils"; import { Transaction, TypeMessage } from "./Transaction"; import { MSafeTransaction } from "./MSafeTransaction"; export declare class MomentumSafe { protected _sdk: SDK; owners: HexString[]; ownersPublicKeys: HexString[]; threshold: number; creationNonce: bigint; rawPublicKey: TxnBuilderTypes.MultiEd25519PublicKey; address: HexString; status: MSafeStatus; constructor(sdk: SDK); init(owners: HexString[], ownerPKs: HexString[], threshold: number, nonce: bigint, address?: HexString): Promise; updateStatus(): Promise; fromMomentumSafe(address: HexString): Promise; getInitTxSigAndRawTx(tx: MSafeTransaction): Promise<{ rawTx: Uint8Array; sig: TxnBuilderTypes.Ed25519Signature; }>; estimateInitTxGas(rawTx: Uint8Array, sig: TxnBuilderTypes.Ed25519Signature): Promise; initTransaction(tx: MSafeTransaction, opts?: Options, needInterval?: boolean, rawTx?: Uint8Array, sig?: TxnBuilderTypes.Ed25519Signature): Promise<{ plHash: HexString; pendingTx: { hash: string; sender: string; sequence_number: string; max_gas_amount: string; gas_unit_price: string; expiration_timestamp_secs: string; payload: Types.TransactionPayload; signature?: ({ type: string; } & Types.Ed25519Signature) | ({ type: string; } & Types.MultiEd25519Signature) | ({ type: string; } & { sender: ({ type: string; } & Types.Ed25519Signature) | ({ type: string; } & Types.MultiEd25519Signature); secondary_signer_addresses: string[]; secondary_signers: (({ type: string; } & Types.Ed25519Signature) | ({ type: string; } & Types.MultiEd25519Signature))[]; }); }; }>; initMigration(migration_message: TypeMessage, metadata?: { [key: string]: string; }, opts?: Options, needInterval?: boolean, rawMessage?: Uint8Array, sig?: TxnBuilderTypes.Ed25519Signature): Promise<{ plHash: HexString; pendingTx: { hash: string; sender: string; sequence_number: string; max_gas_amount: string; gas_unit_price: string; expiration_timestamp_secs: string; payload: Types.TransactionPayload; signature?: ({ type: string; } & Types.Ed25519Signature) | ({ type: string; } & Types.MultiEd25519Signature) | ({ type: string; } & { sender: ({ type: string; } & Types.Ed25519Signature) | ({ type: string; } & Types.MultiEd25519Signature); secondary_signer_addresses: string[]; secondary_signers: (({ type: string; } & Types.Ed25519Signature) | ({ type: string; } & Types.MultiEd25519Signature))[]; }); }; }>; isReadyToSubmit(txHash: string | HexString, extraPubKey?: HexString): Promise; signConfirmTx(txHash: string): Promise; submitTxSignature(txHash: string, sig?: TxnBuilderTypes.Ed25519Signature, opts?: Options, needInterval?: boolean): Promise<{ hash: string; sender: string; sequence_number: string; max_gas_amount: string; gas_unit_price: string; expiration_timestamp_secs: string; payload: Types.TransactionPayload; signature?: ({ type: string; } & Types.Ed25519Signature) | ({ type: string; } & Types.MultiEd25519Signature) | ({ type: string; } & { sender: ({ type: string; } & Types.Ed25519Signature) | ({ type: string; } & Types.MultiEd25519Signature); secondary_signer_addresses: string[]; secondary_signers: (({ type: string; } & Types.Ed25519Signature) | ({ type: string; } & Types.MultiEd25519Signature))[]; }); }>; assembleAndSubmitTx(txHash: HexString | string, needSelfSignature?: boolean, needInterval?: boolean): Promise; assembleAndMigrate(txHash: HexString | string, needSelfSignature?: boolean, opts?: Options, needInterval?: boolean): Promise; signTx(txType: TransactionType): Promise; findTx(txHash: HexString | string): Promise; getTxDetails(txHash: string): Promise<[TransactionType, MSafeTxnInfo]>; private makeInitTxTxBuilder; private makeInitMigrationTxBuilder; private makeMigrateTxBuilder; makeMigrateTxn(multiSignature: TxnBuilderTypes.MultiEd25519Signature, opts?: Options): Promise; makeSubmitSignatureTxn(txHash: string, sig: TxnBuilderTypes.Ed25519Signature, opts?: Options): Promise; makeSubmitSignatureTxnBuilder(txHash: string, sig: TxnBuilderTypes.Ed25519Signature, opts?: Options): Promise; private getResource; getMomentumSafeInfo(): Promise; private static isTxValid; private getIndex; getNextSN(): Promise; private getNextSequenceNumberFromResourceData; getAssetList(): Promise; makeMigrationMessage(sn: bigint): Promise; makeMSafeAPTTransferTx(args: Omit, opts?: Options): Promise; makeMSafeAPTTransferTxBuilder(args: Omit, opts?: Options): Promise; makeMSafeAnyCoinTransferTx(args: Omit, opts?: Options): Promise; makeMSafeAnyCoinTransferTxBuilder(args: Omit, opts?: Options): Promise; makeMSafeAnyCoinRegisterTx(args: Omit, opts?: Options): Promise; makeMSafeAnyCoinRegisterTxBuilder(args: Omit, opts?: Options): Promise; makeRegisterTokenTx(args: Omit, opts?: Options): Promise; makeRegisterTokenTxBuilder(args: Omit, opts?: Options): Promise; makeTransferNftTx(args: Omit, opts?: Options): Promise; makeTransferNftTxBuilder(args: Omit, opts?: Options): Promise; makeEntryFunctionTx(args: Omit, opts?: Options): Promise; makeEntryFunctionTxBuilder(args: Omit, opts?: Options): Promise; makeMSafeRevertTx(args: Omit, opts?: Options): Promise; makeMSafeRevertTxBuilder(args: Omit, opts?: Options): Promise; getMomentumSafeEvent(): Promise; filterTransactionEvent(eventStruct: MomentumSafeEvent, option?: PaginationArgs): Promise[]>; ownedNFTTokens(option?: { limit?: number; start?: number; }): Promise; }