import { VerifiedContract, Options } from "../index";
import { VerifiedWallet } from "../../wallet";
export default class Custody extends VerifiedContract {
    contractAddress: string;
    constructor(signer: VerifiedWallet, contractNetworkAddress: string);
    _getMeeQuote(paymentTokenAddress: string, functionName: string, args: any[], apiKey?: string, rpcUrl?: string): Promise<{
        tokenAddress: string;
        amount: string;
        amountInWei: string;
        amouuntValue: string;
        chainId: number;
        functionName: string;
    }>;
    createVault(_creator: string, _id: string, options?: Options): any;
    resetPin(_creator: string, _id: string, _new: string, options?: Options): any;
    getVaults(): any;
    transferVault(_creator: string, _id: string, _transferee: string, options?: Options): any;
    getCreator(_creator: string, _pin: string, options?: Options): any;
    addParticipant(_creator: string, _id: string, _participant: string, _shard: string, options?: Options): any;
    removeParticipant(_creator: string, _id: string, _participant: string, options?: Options): any;
    confirmParticipant(_creator: string, _id: string, _participant: string, _pin: string, _confirmation: string, options?: Options): any;
    defineQuorum(_creator: string, _id: string, _minParticipants: string, options?: Options): any;
    getQuorum(_creator: string, _id: string, options?: Options): any;
    promptSignatures(_creator: string, _id: string, options?: Options): any;
    signTransaction(_creator: string, _id: string, _participant: string, _tx: string, _pin: string, options?: Options): any;
    checkQuorum(_creator: string, _id: string, _participant: string, _txid: string, options?: Options): any;
    getShards(_creator: string, _id: string, _txid: string, options?: Options): any;
    snapshotBalance(_creator: string, _id: string, _token: string, options?: Options): any;
    calculateAverageBalance(_creator: string, _id: string, _token: string, _fromTime: string, _toTime: string, options?: Options): any;
    collectCustodyFee(_token: string, options?: Options): any;
    setDistributor(_nominee: string, options?: Options): any;
    setCustodyFee(_fee: string, options?: Options): any;
    notifyNewParticipant(callback: any): object;
    notifyNewTransaction(callback: any): object;
    notifySignTransaction(callback: any): object;
}
