import type { SerializedBcs } from '@mysten/bcs';
import type { TransactionArgument } from '@mysten/sui/transactions';
export declare const SUI_PACKAGE_ID = "0x2";
export declare const STD_PACKAGE_ID = "0x1";
export declare const CLOCK_PACKAGE_ID = "0x6";
export interface InterchainTokenOptions {
    filePath?: string;
    symbol: string;
    name: string;
    decimals: number;
}
export interface Dependency {
    name: string;
    directory: string;
    path: string;
}
export declare enum ITSMessageType {
    InterchainTokenTransfer = 0,
    InterchainTokenDeployment = 1,
    SendToItsHub = 3,
    ReceiveFromItsHub = 4,
    RegisdterTokenMetadata = 6
}
export declare enum GatewayMessageType {
    ApproveMessages = 0,
    RotateSigners = 1
}
export interface DependencyNode extends Dependency {
    dependencies: string[];
}
export declare const UID: import("@mysten/bcs").BcsType<string, string>;
export type Signer = {
    pub_key: Uint8Array;
    weight: number;
};
export type MessageInfo = {
    source_chain: string;
    message_id: string;
    source_address: string;
    destination_id: string;
    payload_hash: string;
    payload: string;
};
export type GatewayInfo = {
    packageId: string;
    gateway: string;
};
export type GatewayApprovalInfo = GatewayInfo & {
    signers: {
        signers: Signer[];
        threshold: number;
        nonce: string;
    };
    signerKeys: string[];
    domainSeparator: string;
};
export type DiscoveryInfo = {
    packageId: string;
    discovery: string;
};
export type RawMoveCall = {
    function: {
        package_id: string;
        module_name: string;
        name: string;
    };
    arguments: any[];
    type_arguments: string[];
};
export type MoveCallArgument = TransactionArgument | SerializedBcs<any>;
export type MoveCall = {
    arguments?: MoveCallArgument[];
    typeArguments?: string[];
    target: string;
};
export type ApprovedMessage = {
    $kind: string;
    Result: number;
};
export declare enum MoveCallType {
    Object = 0,
    Pure = 1,
    ApproveMessage = 2,
    Payload = 3,
    HotPotato = 4
}
//# sourceMappingURL=types.d.ts.map