/**
 * ABI for the IProver contract
 */
export declare const IProverAbi: readonly [{
    readonly inputs: readonly [];
    readonly name: "ArrayLengthMismatch";
    readonly type: "error";
}, {
    readonly inputs: readonly [{
        readonly internalType: "bytes32";
        readonly name: "_hash";
        readonly type: "bytes32";
    }, {
        readonly internalType: "uint96";
        readonly name: "_expectedDestinationChainID";
        readonly type: "uint96";
    }, {
        readonly internalType: "uint96";
        readonly name: "_actualDestinationChainID";
        readonly type: "uint96";
    }];
    readonly name: "BadDestinationChainID";
    readonly type: "error";
}, {
    readonly anonymous: false;
    readonly inputs: readonly [{
        readonly indexed: false;
        readonly internalType: "bytes32";
        readonly name: "_intentHash";
        readonly type: "bytes32";
    }];
    readonly name: "IntentAlreadyProven";
    readonly type: "event";
}, {
    readonly anonymous: false;
    readonly inputs: readonly [{
        readonly indexed: true;
        readonly internalType: "bytes32";
        readonly name: "_hash";
        readonly type: "bytes32";
    }, {
        readonly indexed: true;
        readonly internalType: "address";
        readonly name: "_claimant";
        readonly type: "address";
    }];
    readonly name: "IntentProven";
    readonly type: "event";
}, {
    readonly inputs: readonly [{
        readonly components: readonly [{
            readonly components: readonly [{
                readonly internalType: "bytes32";
                readonly name: "salt";
                readonly type: "bytes32";
            }, {
                readonly internalType: "uint256";
                readonly name: "source";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "destination";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "inbox";
                readonly type: "address";
            }, {
                readonly components: readonly [{
                    readonly internalType: "address";
                    readonly name: "token";
                    readonly type: "address";
                }, {
                    readonly internalType: "uint256";
                    readonly name: "amount";
                    readonly type: "uint256";
                }];
                readonly internalType: "struct TokenAmount[]";
                readonly name: "tokens";
                readonly type: "tuple[]";
            }, {
                readonly components: readonly [{
                    readonly internalType: "address";
                    readonly name: "target";
                    readonly type: "address";
                }, {
                    readonly internalType: "bytes";
                    readonly name: "data";
                    readonly type: "bytes";
                }, {
                    readonly internalType: "uint256";
                    readonly name: "value";
                    readonly type: "uint256";
                }];
                readonly internalType: "struct Call[]";
                readonly name: "calls";
                readonly type: "tuple[]";
            }];
            readonly internalType: "struct Route";
            readonly name: "route";
            readonly type: "tuple";
        }, {
            readonly components: readonly [{
                readonly internalType: "address";
                readonly name: "creator";
                readonly type: "address";
            }, {
                readonly internalType: "address";
                readonly name: "prover";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "nativeValue";
                readonly type: "uint256";
            }, {
                readonly components: readonly [{
                    readonly internalType: "address";
                    readonly name: "token";
                    readonly type: "address";
                }, {
                    readonly internalType: "uint256";
                    readonly name: "amount";
                    readonly type: "uint256";
                }];
                readonly internalType: "struct TokenAmount[]";
                readonly name: "tokens";
                readonly type: "tuple[]";
            }];
            readonly internalType: "struct Reward";
            readonly name: "reward";
            readonly type: "tuple";
        }];
        readonly internalType: "struct Intent";
        readonly name: "_intent";
        readonly type: "tuple";
    }];
    readonly name: "challengeIntentProof";
    readonly outputs: readonly [];
    readonly stateMutability: "nonpayable";
    readonly type: "function";
}, {
    readonly inputs: readonly [];
    readonly name: "getProofType";
    readonly outputs: readonly [{
        readonly internalType: "string";
        readonly name: "";
        readonly type: "string";
    }];
    readonly stateMutability: "pure";
    readonly type: "function";
}, {
    readonly inputs: readonly [{
        readonly internalType: "address";
        readonly name: "_sender";
        readonly type: "address";
    }, {
        readonly internalType: "uint256";
        readonly name: "_sourceChainId";
        readonly type: "uint256";
    }, {
        readonly internalType: "bytes32[]";
        readonly name: "_intentHashes";
        readonly type: "bytes32[]";
    }, {
        readonly internalType: "address[]";
        readonly name: "_claimants";
        readonly type: "address[]";
    }, {
        readonly internalType: "bytes";
        readonly name: "_data";
        readonly type: "bytes";
    }];
    readonly name: "prove";
    readonly outputs: readonly [];
    readonly stateMutability: "payable";
    readonly type: "function";
}, {
    readonly inputs: readonly [{
        readonly internalType: "bytes32";
        readonly name: "_intentHash";
        readonly type: "bytes32";
    }];
    readonly name: "provenIntents";
    readonly outputs: readonly [{
        readonly components: readonly [{
            readonly internalType: "uint96";
            readonly name: "destinationChainID";
            readonly type: "uint96";
        }, {
            readonly internalType: "address";
            readonly name: "claimant";
            readonly type: "address";
        }];
        readonly internalType: "struct IProver.ProofData";
        readonly name: "";
        readonly type: "tuple";
    }];
    readonly stateMutability: "view";
    readonly type: "function";
}, {
    readonly inputs: readonly [];
    readonly name: "version";
    readonly outputs: readonly [{
        readonly internalType: "string";
        readonly name: "";
        readonly type: "string";
    }];
    readonly stateMutability: "pure";
    readonly type: "function";
}];
/**
 * Type-safe ABI for the IProver contract
 */
export type IProverAbiType = typeof IProverAbi;
/**
 * Bytecode for the IProver contract
 */
export declare const IProverBytecode = "0x";
/**
 * Deployed bytecode for the IProver contract
 */
export declare const IProverDeployedBytecode = "0x";
