import { Web3LibAdapter, TransactionResponse, TransactionRequest } from "@bosonprotocol/common";
import { BigNumberish } from "@ethersproject/bignumber";
import { BytesLike } from "@ethersproject/bytes";
import { getSignatureParameters, StructuredData } from "../utils/signature";
export declare function raiseDispute(args: {
    exchangeId: BigNumberish;
    contractAddress: string;
    web3Lib: Web3LibAdapter;
    returnTxInfo: true;
}): Promise<TransactionRequest>;
export declare function raiseDispute(args: {
    exchangeId: BigNumberish;
    contractAddress: string;
    web3Lib: Web3LibAdapter;
    returnTxInfo?: false | undefined;
}): Promise<TransactionResponse>;
export declare function retractDispute(args: {
    exchangeId: BigNumberish;
    contractAddress: string;
    web3Lib: Web3LibAdapter;
    returnTxInfo: true;
}): Promise<TransactionRequest>;
export declare function retractDispute(args: {
    exchangeId: BigNumberish;
    contractAddress: string;
    web3Lib: Web3LibAdapter;
    returnTxInfo?: false | undefined;
}): Promise<TransactionResponse>;
export declare function extendDisputeTimeout(args: {
    exchangeId: BigNumberish;
    newDisputeTimeout: BigNumberish;
    contractAddress: string;
    web3Lib: Web3LibAdapter;
    returnTxInfo: true;
}): Promise<TransactionRequest>;
export declare function extendDisputeTimeout(args: {
    exchangeId: BigNumberish;
    newDisputeTimeout: BigNumberish;
    contractAddress: string;
    web3Lib: Web3LibAdapter;
    returnTxInfo?: false | undefined;
}): Promise<TransactionResponse>;
export declare function expireDispute(args: {
    exchangeId: BigNumberish;
    contractAddress: string;
    web3Lib: Web3LibAdapter;
    returnTxInfo: true;
}): Promise<TransactionRequest>;
export declare function expireDispute(args: {
    exchangeId: BigNumberish;
    contractAddress: string;
    web3Lib: Web3LibAdapter;
    returnTxInfo?: false | undefined;
}): Promise<TransactionResponse>;
export declare function expireDisputeBatch(args: {
    exchangeIds: BigNumberish[];
    contractAddress: string;
    web3Lib: Web3LibAdapter;
    returnTxInfo: true;
}): Promise<TransactionRequest>;
export declare function expireDisputeBatch(args: {
    exchangeIds: BigNumberish[];
    contractAddress: string;
    web3Lib: Web3LibAdapter;
    returnTxInfo?: false | undefined;
}): Promise<TransactionResponse>;
export declare function resolveDispute(args: {
    exchangeId: BigNumberish;
    buyerPercentBasisPoints: BigNumberish;
    sigR: BytesLike;
    sigS: BytesLike;
    sigV: BigNumberish;
    contractAddress: string;
    web3Lib: Web3LibAdapter;
    returnTxInfo: true;
} | {
    exchangeId: BigNumberish;
    buyerPercentBasisPoints: BigNumberish;
    signature: string;
    contractAddress: string;
    web3Lib: Web3LibAdapter;
    returnTxInfo: true;
}): Promise<TransactionRequest>;
export declare function resolveDispute(args: {
    exchangeId: BigNumberish;
    buyerPercentBasisPoints: BigNumberish;
    sigR: BytesLike;
    sigS: BytesLike;
    sigV: BigNumberish;
    contractAddress: string;
    web3Lib: Web3LibAdapter;
    returnTxInfo?: false | undefined;
} | {
    exchangeId: BigNumberish;
    buyerPercentBasisPoints: BigNumberish;
    signature: string;
    contractAddress: string;
    web3Lib: Web3LibAdapter;
    returnTxInfo?: false | undefined;
}): Promise<TransactionResponse>;
export declare function escalateDispute(args: {
    exchangeId: BigNumberish;
    contractAddress: string;
    web3Lib: Web3LibAdapter;
    returnTxInfo: true;
}): Promise<TransactionRequest>;
export declare function escalateDispute(args: {
    exchangeId: BigNumberish;
    contractAddress: string;
    web3Lib: Web3LibAdapter;
    returnTxInfo?: false | undefined;
}): Promise<TransactionResponse>;
export declare function decideDispute(args: {
    exchangeId: BigNumberish;
    buyerPercent: BigNumberish;
    contractAddress: string;
    web3Lib: Web3LibAdapter;
    returnTxInfo: true;
}): Promise<TransactionRequest>;
export declare function decideDispute(args: {
    exchangeId: BigNumberish;
    buyerPercent: BigNumberish;
    contractAddress: string;
    web3Lib: Web3LibAdapter;
    returnTxInfo?: false | undefined;
}): Promise<TransactionResponse>;
export declare function refuseEscalatedDispute(args: {
    exchangeId: BigNumberish;
    contractAddress: string;
    web3Lib: Web3LibAdapter;
    returnTxInfo: true;
}): Promise<TransactionRequest>;
export declare function refuseEscalatedDispute(args: {
    exchangeId: BigNumberish;
    contractAddress: string;
    web3Lib: Web3LibAdapter;
    returnTxInfo?: false | undefined;
}): Promise<TransactionResponse>;
export declare function expireEscalatedDispute(args: {
    exchangeId: BigNumberish;
    contractAddress: string;
    web3Lib: Web3LibAdapter;
    returnTxInfo: true;
}): Promise<TransactionRequest>;
export declare function expireEscalatedDispute(args: {
    exchangeId: BigNumberish;
    contractAddress: string;
    web3Lib: Web3LibAdapter;
    returnTxInfo?: false | undefined;
}): Promise<TransactionResponse>;
export declare function signResolutionProposal(args: {
    exchangeId: BigNumberish;
    buyerPercentBasisPoints: BigNumberish;
    contractAddress: string;
    web3Lib: Web3LibAdapter;
    chainId: number;
    returnTypedDataToSign: true;
}): Promise<StructuredData>;
export declare function signResolutionProposal(args: {
    exchangeId: BigNumberish;
    buyerPercentBasisPoints: BigNumberish;
    contractAddress: string;
    web3Lib: Web3LibAdapter;
    chainId: number;
    returnTypedDataToSign?: false;
}): Promise<ReturnType<typeof getSignatureParameters>>;
//# sourceMappingURL=handler.d.ts.map