import { TxProposalLegacy } from './txproposal_legacy';
export interface ITxProposal {
    type: string;
    creatorName: string;
    createdOn: number;
    txid: string;
    id: string;
    walletId: string;
    creatorId: string;
    coin: string;
    chain: string;
    network: string;
    message: string;
    messageOnChain: string;
    payProUrl: string;
    from: string;
    changeAddress: string;
    inputs: any[];
    outputs: Array<{
        amount: number;
        address: string;
        toAddress?: string;
        message?: string;
        data?: string;
        gasLimit?: number;
        script?: string;
    }>;
    outputOrder: number;
    walletM: number;
    walletN: number;
    requiredSignatures: number;
    requiredRejections: number;
    status: string;
    actions: [];
    feeLevel: number;
    feePerKb: number;
    excludeUnconfirmedUtxos: boolean;
    addressType: string;
    customData: any;
    amount: string;
    fee: number;
    version: number;
    broadcastedOn: number;
    inputPaths: string;
    proposalSignature: string;
    proposalSignaturePubKey: string;
    proposalSignaturePubKeySig: string;
    signingMethod: string;
    lowFees: boolean;
    nonce?: number;
    gasPrice?: number;
    gasLimit?: number;
    data?: string;
    tokenAddress?: string;
    multisigContractAddress?: string;
    destinationTag?: string;
    invoiceID?: string;
    lockUntilBlockHeight?: number;
    isTokenSwap?: boolean;
}
export declare class TxProposal {
    type: string;
    creatorName: string;
    createdOn: number;
    id: string;
    txid: string;
    walletId: string;
    creatorId: string;
    coin: string;
    chain: string;
    network: string;
    message: string;
    messageOnChain: string;
    payProUrl: string;
    from: string;
    changeAddress: any;
    inputs: any[];
    outputs: Array<{
        amount: number;
        address?: string;
        toAddress?: string;
        message?: string;
        data?: string;
        gasLimit?: number;
        script?: string;
        satoshis?: number;
    }>;
    outputOrder: number[];
    walletM: number;
    walletN: number;
    requiredSignatures: number;
    requiredRejections: number;
    status: string;
    actions: any[];
    feeLevel: number;
    feePerKb: number;
    excludeUnconfirmedUtxos: boolean;
    addressType: string;
    customData: any;
    amount: string | number;
    fee: number;
    version: number;
    broadcastedOn: number;
    inputPaths: string | any[];
    proposalSignature: string;
    proposalSignaturePubKey: string;
    proposalSignaturePubKeySig: string;
    signingMethod: string;
    raw?: Array<string> | string;
    nonce?: number;
    gasPrice?: number;
    gasLimit?: number;
    data?: string;
    tokenAddress?: string;
    multisigContractAddress?: string;
    multisigTxId?: string;
    destinationTag?: string;
    invoiceID?: string;
    lockUntilBlockHeight?: number;
    isDonation?: boolean;
    receiveLotusAddress?: string;
    isTokenSwap?: boolean;
    static create(opts: any): TxProposal;
    static fromObj(obj: any): TxProposalLegacy | TxProposal;
    toObject(): any;
    setInputs(inputs: any): void;
    _updateStatus(): void;
    getCurrentSignatures(): {
        signatures: any;
        xpub: any;
    }[];
    getRawTx(): any;
    getTotalAmount(): number;
    getActors(): any[];
    getApprovers(): any[];
    getActionBy(copayerId: any): any;
    addAction(copayerId: any, type: any, comment: any, signatures?: any, xpub?: any): void;
    sign(copayerId: any, signatures: any, xpub: any): boolean;
    reject(copayerId: any, reason: any): void;
    isTemporary(): boolean;
    isPending(): boolean;
    isAccepted(): boolean;
    isRejected(): boolean;
    isBroadcasted(): boolean;
    setBroadcasted(): void;
}
//# sourceMappingURL=txproposal.d.ts.map