/**
 * ABI for the IIntentSource contract
 */
export declare const IIntentSourceAbi: readonly [{
    readonly inputs: readonly [];
    readonly name: "ArrayLengthMismatch";
    readonly type: "error";
}, {
    readonly inputs: readonly [{
        readonly internalType: "bytes32";
        readonly name: "intentHash";
        readonly type: "bytes32";
    }];
    readonly name: "InsufficientFunds";
    readonly type: "error";
}, {
    readonly inputs: readonly [{
        readonly internalType: "bytes32";
        readonly name: "intentHash";
        readonly type: "bytes32";
    }];
    readonly name: "IntentAlreadyExists";
    readonly type: "error";
}, {
    readonly inputs: readonly [{
        readonly internalType: "bytes32";
        readonly name: "intentHash";
        readonly type: "bytes32";
    }];
    readonly name: "IntentNotClaimed";
    readonly type: "error";
}, {
    readonly inputs: readonly [];
    readonly name: "InvalidClaimant";
    readonly type: "error";
}, {
    readonly inputs: readonly [{
        readonly internalType: "address";
        readonly name: "token";
        readonly type: "address";
    }];
    readonly name: "InvalidRecoverToken";
    readonly type: "error";
}, {
    readonly inputs: readonly [{
        readonly internalType: "enum IIntentSource.Status";
        readonly name: "status";
        readonly type: "uint8";
    }];
    readonly name: "InvalidStatusForFunding";
    readonly type: "error";
}, {
    readonly inputs: readonly [{
        readonly internalType: "enum IIntentSource.Status";
        readonly name: "status";
        readonly type: "uint8";
    }, {
        readonly internalType: "uint256";
        readonly name: "currentTime";
        readonly type: "uint256";
    }, {
        readonly internalType: "uint256";
        readonly name: "deadline";
        readonly type: "uint256";
    }];
    readonly name: "InvalidStatusForRefund";
    readonly type: "error";
}, {
    readonly inputs: readonly [{
        readonly internalType: "enum IIntentSource.Status";
        readonly name: "status";
        readonly type: "uint8";
    }];
    readonly name: "InvalidStatusForWithdrawal";
    readonly type: "error";
}, {
    readonly inputs: readonly [{
        readonly internalType: "address";
        readonly name: "caller";
        readonly type: "address";
    }];
    readonly name: "NotCreatorCaller";
    readonly type: "error";
}, {
    readonly anonymous: false;
    readonly inputs: readonly [{
        readonly indexed: false;
        readonly internalType: "bytes32";
        readonly name: "intentHash";
        readonly type: "bytes32";
    }, {
        readonly indexed: false;
        readonly internalType: "address";
        readonly name: "funder";
        readonly type: "address";
    }, {
        readonly indexed: false;
        readonly internalType: "bool";
        readonly name: "complete";
        readonly type: "bool";
    }];
    readonly name: "IntentFunded";
    readonly type: "event";
}, {
    readonly anonymous: false;
    readonly inputs: readonly [{
        readonly indexed: true;
        readonly internalType: "bytes32";
        readonly name: "intentHash";
        readonly type: "bytes32";
    }, {
        readonly indexed: false;
        readonly internalType: "uint64";
        readonly name: "destination";
        readonly type: "uint64";
    }, {
        readonly indexed: false;
        readonly internalType: "bytes";
        readonly name: "route";
        readonly type: "bytes";
    }, {
        readonly indexed: true;
        readonly internalType: "address";
        readonly name: "creator";
        readonly type: "address";
    }, {
        readonly indexed: true;
        readonly internalType: "address";
        readonly name: "prover";
        readonly type: "address";
    }, {
        readonly indexed: false;
        readonly internalType: "uint64";
        readonly name: "rewardDeadline";
        readonly type: "uint64";
    }, {
        readonly indexed: false;
        readonly internalType: "uint256";
        readonly name: "rewardNativeAmount";
        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 indexed: false;
        readonly internalType: "struct TokenAmount[]";
        readonly name: "rewardTokens";
        readonly type: "tuple[]";
    }];
    readonly name: "IntentPublished";
    readonly type: "event";
}, {
    readonly anonymous: false;
    readonly inputs: readonly [{
        readonly indexed: false;
        readonly internalType: "bytes32";
        readonly name: "intentHash";
        readonly type: "bytes32";
    }, {
        readonly indexed: true;
        readonly internalType: "address";
        readonly name: "refundee";
        readonly type: "address";
    }];
    readonly name: "IntentRefunded";
    readonly type: "event";
}, {
    readonly anonymous: false;
    readonly inputs: readonly [{
        readonly indexed: false;
        readonly internalType: "bytes32";
        readonly name: "intentHash";
        readonly type: "bytes32";
    }, {
        readonly indexed: true;
        readonly internalType: "address";
        readonly name: "refundee";
        readonly type: "address";
    }, {
        readonly indexed: true;
        readonly internalType: "address";
        readonly name: "token";
        readonly type: "address";
    }];
    readonly name: "IntentTokenRecovered";
    readonly type: "event";
}, {
    readonly anonymous: false;
    readonly inputs: readonly [{
        readonly indexed: false;
        readonly internalType: "bytes32";
        readonly name: "intentHash";
        readonly type: "bytes32";
    }, {
        readonly indexed: true;
        readonly internalType: "address";
        readonly name: "claimant";
        readonly type: "address";
    }];
    readonly name: "IntentWithdrawn";
    readonly type: "event";
}, {
    readonly inputs: readonly [{
        readonly internalType: "uint64[]";
        readonly name: "destinations";
        readonly type: "uint64[]";
    }, {
        readonly internalType: "bytes32[]";
        readonly name: "routeHashes";
        readonly type: "bytes32[]";
    }, {
        readonly components: readonly [{
            readonly internalType: "uint64";
            readonly name: "deadline";
            readonly type: "uint64";
        }, {
            readonly internalType: "address";
            readonly name: "creator";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "prover";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "nativeAmount";
            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: "rewards";
        readonly type: "tuple[]";
    }];
    readonly name: "batchWithdraw";
    readonly outputs: readonly [];
    readonly stateMutability: "nonpayable";
    readonly type: "function";
}, {
    readonly inputs: readonly [{
        readonly internalType: "uint64";
        readonly name: "destination";
        readonly type: "uint64";
    }, {
        readonly internalType: "bytes32";
        readonly name: "routeHash";
        readonly type: "bytes32";
    }, {
        readonly components: readonly [{
            readonly internalType: "uint64";
            readonly name: "deadline";
            readonly type: "uint64";
        }, {
            readonly internalType: "address";
            readonly name: "creator";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "prover";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "nativeAmount";
            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: "bool";
        readonly name: "allowPartial";
        readonly type: "bool";
    }];
    readonly name: "fund";
    readonly outputs: readonly [{
        readonly internalType: "bytes32";
        readonly name: "intentHash";
        readonly type: "bytes32";
    }];
    readonly stateMutability: "payable";
    readonly type: "function";
}, {
    readonly inputs: readonly [{
        readonly internalType: "uint64";
        readonly name: "destination";
        readonly type: "uint64";
    }, {
        readonly internalType: "bytes32";
        readonly name: "routeHash";
        readonly type: "bytes32";
    }, {
        readonly components: readonly [{
            readonly internalType: "uint64";
            readonly name: "deadline";
            readonly type: "uint64";
        }, {
            readonly internalType: "address";
            readonly name: "creator";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "prover";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "nativeAmount";
            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: "bool";
        readonly name: "allowPartial";
        readonly type: "bool";
    }, {
        readonly internalType: "address";
        readonly name: "fundingAddress";
        readonly type: "address";
    }, {
        readonly internalType: "address";
        readonly name: "permitContract";
        readonly type: "address";
    }];
    readonly name: "fundFor";
    readonly outputs: readonly [{
        readonly internalType: "bytes32";
        readonly name: "intentHash";
        readonly type: "bytes32";
    }];
    readonly stateMutability: "payable";
    readonly type: "function";
}, {
    readonly inputs: readonly [{
        readonly internalType: "uint64";
        readonly name: "destination";
        readonly type: "uint64";
    }, {
        readonly internalType: "bytes";
        readonly name: "route";
        readonly type: "bytes";
    }, {
        readonly components: readonly [{
            readonly internalType: "uint64";
            readonly name: "deadline";
            readonly type: "uint64";
        }, {
            readonly internalType: "address";
            readonly name: "creator";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "prover";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "nativeAmount";
            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 name: "getIntentHash";
    readonly outputs: readonly [{
        readonly internalType: "bytes32";
        readonly name: "intentHash";
        readonly type: "bytes32";
    }, {
        readonly internalType: "bytes32";
        readonly name: "routeHash";
        readonly type: "bytes32";
    }, {
        readonly internalType: "bytes32";
        readonly name: "rewardHash";
        readonly type: "bytes32";
    }];
    readonly stateMutability: "pure";
    readonly type: "function";
}, {
    readonly inputs: readonly [{
        readonly components: readonly [{
            readonly internalType: "uint64";
            readonly name: "destination";
            readonly type: "uint64";
        }, {
            readonly components: readonly [{
                readonly internalType: "bytes32";
                readonly name: "salt";
                readonly type: "bytes32";
            }, {
                readonly internalType: "uint64";
                readonly name: "deadline";
                readonly type: "uint64";
            }, {
                readonly internalType: "address";
                readonly name: "portal";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "nativeAmount";
                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 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: "uint64";
                readonly name: "deadline";
                readonly type: "uint64";
            }, {
                readonly internalType: "address";
                readonly name: "creator";
                readonly type: "address";
            }, {
                readonly internalType: "address";
                readonly name: "prover";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "nativeAmount";
                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: "getIntentHash";
    readonly outputs: readonly [{
        readonly internalType: "bytes32";
        readonly name: "intentHash";
        readonly type: "bytes32";
    }, {
        readonly internalType: "bytes32";
        readonly name: "routeHash";
        readonly type: "bytes32";
    }, {
        readonly internalType: "bytes32";
        readonly name: "rewardHash";
        readonly type: "bytes32";
    }];
    readonly stateMutability: "pure";
    readonly type: "function";
}, {
    readonly inputs: readonly [{
        readonly internalType: "bytes32";
        readonly name: "intentHash";
        readonly type: "bytes32";
    }];
    readonly name: "getRewardStatus";
    readonly outputs: readonly [{
        readonly internalType: "enum IIntentSource.Status";
        readonly name: "status";
        readonly type: "uint8";
    }];
    readonly stateMutability: "view";
    readonly type: "function";
}, {
    readonly inputs: readonly [{
        readonly internalType: "uint64";
        readonly name: "destination";
        readonly type: "uint64";
    }, {
        readonly internalType: "bytes";
        readonly name: "route";
        readonly type: "bytes";
    }, {
        readonly components: readonly [{
            readonly internalType: "uint64";
            readonly name: "deadline";
            readonly type: "uint64";
        }, {
            readonly internalType: "address";
            readonly name: "creator";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "prover";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "nativeAmount";
            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 name: "intentVaultAddress";
    readonly outputs: readonly [{
        readonly internalType: "address";
        readonly name: "";
        readonly type: "address";
    }];
    readonly stateMutability: "view";
    readonly type: "function";
}, {
    readonly inputs: readonly [{
        readonly components: readonly [{
            readonly internalType: "uint64";
            readonly name: "destination";
            readonly type: "uint64";
        }, {
            readonly components: readonly [{
                readonly internalType: "bytes32";
                readonly name: "salt";
                readonly type: "bytes32";
            }, {
                readonly internalType: "uint64";
                readonly name: "deadline";
                readonly type: "uint64";
            }, {
                readonly internalType: "address";
                readonly name: "portal";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "nativeAmount";
                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 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: "uint64";
                readonly name: "deadline";
                readonly type: "uint64";
            }, {
                readonly internalType: "address";
                readonly name: "creator";
                readonly type: "address";
            }, {
                readonly internalType: "address";
                readonly name: "prover";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "nativeAmount";
                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: "intentVaultAddress";
    readonly outputs: readonly [{
        readonly internalType: "address";
        readonly name: "";
        readonly type: "address";
    }];
    readonly stateMutability: "view";
    readonly type: "function";
}, {
    readonly inputs: readonly [{
        readonly internalType: "uint64";
        readonly name: "destination";
        readonly type: "uint64";
    }, {
        readonly internalType: "bytes";
        readonly name: "route";
        readonly type: "bytes";
    }, {
        readonly components: readonly [{
            readonly internalType: "uint64";
            readonly name: "deadline";
            readonly type: "uint64";
        }, {
            readonly internalType: "address";
            readonly name: "creator";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "prover";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "nativeAmount";
            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 name: "isIntentFunded";
    readonly outputs: readonly [{
        readonly internalType: "bool";
        readonly name: "";
        readonly type: "bool";
    }];
    readonly stateMutability: "view";
    readonly type: "function";
}, {
    readonly inputs: readonly [{
        readonly components: readonly [{
            readonly internalType: "uint64";
            readonly name: "destination";
            readonly type: "uint64";
        }, {
            readonly components: readonly [{
                readonly internalType: "bytes32";
                readonly name: "salt";
                readonly type: "bytes32";
            }, {
                readonly internalType: "uint64";
                readonly name: "deadline";
                readonly type: "uint64";
            }, {
                readonly internalType: "address";
                readonly name: "portal";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "nativeAmount";
                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 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: "uint64";
                readonly name: "deadline";
                readonly type: "uint64";
            }, {
                readonly internalType: "address";
                readonly name: "creator";
                readonly type: "address";
            }, {
                readonly internalType: "address";
                readonly name: "prover";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "nativeAmount";
                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: "isIntentFunded";
    readonly outputs: readonly [{
        readonly internalType: "bool";
        readonly name: "";
        readonly type: "bool";
    }];
    readonly stateMutability: "view";
    readonly type: "function";
}, {
    readonly inputs: readonly [{
        readonly components: readonly [{
            readonly internalType: "uint64";
            readonly name: "destination";
            readonly type: "uint64";
        }, {
            readonly components: readonly [{
                readonly internalType: "bytes32";
                readonly name: "salt";
                readonly type: "bytes32";
            }, {
                readonly internalType: "uint64";
                readonly name: "deadline";
                readonly type: "uint64";
            }, {
                readonly internalType: "address";
                readonly name: "portal";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "nativeAmount";
                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 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: "uint64";
                readonly name: "deadline";
                readonly type: "uint64";
            }, {
                readonly internalType: "address";
                readonly name: "creator";
                readonly type: "address";
            }, {
                readonly internalType: "address";
                readonly name: "prover";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "nativeAmount";
                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: "publish";
    readonly outputs: readonly [{
        readonly internalType: "bytes32";
        readonly name: "intentHash";
        readonly type: "bytes32";
    }, {
        readonly internalType: "address";
        readonly name: "vault";
        readonly type: "address";
    }];
    readonly stateMutability: "nonpayable";
    readonly type: "function";
}, {
    readonly inputs: readonly [{
        readonly internalType: "uint64";
        readonly name: "destination";
        readonly type: "uint64";
    }, {
        readonly internalType: "bytes";
        readonly name: "route";
        readonly type: "bytes";
    }, {
        readonly components: readonly [{
            readonly internalType: "uint64";
            readonly name: "deadline";
            readonly type: "uint64";
        }, {
            readonly internalType: "address";
            readonly name: "creator";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "prover";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "nativeAmount";
            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 name: "publish";
    readonly outputs: readonly [{
        readonly internalType: "bytes32";
        readonly name: "intentHash";
        readonly type: "bytes32";
    }, {
        readonly internalType: "address";
        readonly name: "vault";
        readonly type: "address";
    }];
    readonly stateMutability: "nonpayable";
    readonly type: "function";
}, {
    readonly inputs: readonly [{
        readonly internalType: "uint64";
        readonly name: "destination";
        readonly type: "uint64";
    }, {
        readonly internalType: "bytes";
        readonly name: "route";
        readonly type: "bytes";
    }, {
        readonly components: readonly [{
            readonly internalType: "uint64";
            readonly name: "deadline";
            readonly type: "uint64";
        }, {
            readonly internalType: "address";
            readonly name: "creator";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "prover";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "nativeAmount";
            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: "bool";
        readonly name: "allowPartial";
        readonly type: "bool";
    }];
    readonly name: "publishAndFund";
    readonly outputs: readonly [{
        readonly internalType: "bytes32";
        readonly name: "intentHash";
        readonly type: "bytes32";
    }, {
        readonly internalType: "address";
        readonly name: "vault";
        readonly type: "address";
    }];
    readonly stateMutability: "payable";
    readonly type: "function";
}, {
    readonly inputs: readonly [{
        readonly components: readonly [{
            readonly internalType: "uint64";
            readonly name: "destination";
            readonly type: "uint64";
        }, {
            readonly components: readonly [{
                readonly internalType: "bytes32";
                readonly name: "salt";
                readonly type: "bytes32";
            }, {
                readonly internalType: "uint64";
                readonly name: "deadline";
                readonly type: "uint64";
            }, {
                readonly internalType: "address";
                readonly name: "portal";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "nativeAmount";
                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 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: "uint64";
                readonly name: "deadline";
                readonly type: "uint64";
            }, {
                readonly internalType: "address";
                readonly name: "creator";
                readonly type: "address";
            }, {
                readonly internalType: "address";
                readonly name: "prover";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "nativeAmount";
                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 internalType: "bool";
        readonly name: "allowPartial";
        readonly type: "bool";
    }];
    readonly name: "publishAndFund";
    readonly outputs: readonly [{
        readonly internalType: "bytes32";
        readonly name: "intentHash";
        readonly type: "bytes32";
    }, {
        readonly internalType: "address";
        readonly name: "vault";
        readonly type: "address";
    }];
    readonly stateMutability: "payable";
    readonly type: "function";
}, {
    readonly inputs: readonly [{
        readonly internalType: "uint64";
        readonly name: "destination";
        readonly type: "uint64";
    }, {
        readonly internalType: "bytes";
        readonly name: "route";
        readonly type: "bytes";
    }, {
        readonly components: readonly [{
            readonly internalType: "uint64";
            readonly name: "deadline";
            readonly type: "uint64";
        }, {
            readonly internalType: "address";
            readonly name: "creator";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "prover";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "nativeAmount";
            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: "bool";
        readonly name: "allowPartial";
        readonly type: "bool";
    }, {
        readonly internalType: "address";
        readonly name: "funder";
        readonly type: "address";
    }, {
        readonly internalType: "address";
        readonly name: "permitContract";
        readonly type: "address";
    }];
    readonly name: "publishAndFundFor";
    readonly outputs: readonly [{
        readonly internalType: "bytes32";
        readonly name: "intentHash";
        readonly type: "bytes32";
    }, {
        readonly internalType: "address";
        readonly name: "vault";
        readonly type: "address";
    }];
    readonly stateMutability: "payable";
    readonly type: "function";
}, {
    readonly inputs: readonly [{
        readonly components: readonly [{
            readonly internalType: "uint64";
            readonly name: "destination";
            readonly type: "uint64";
        }, {
            readonly components: readonly [{
                readonly internalType: "bytes32";
                readonly name: "salt";
                readonly type: "bytes32";
            }, {
                readonly internalType: "uint64";
                readonly name: "deadline";
                readonly type: "uint64";
            }, {
                readonly internalType: "address";
                readonly name: "portal";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "nativeAmount";
                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 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: "uint64";
                readonly name: "deadline";
                readonly type: "uint64";
            }, {
                readonly internalType: "address";
                readonly name: "creator";
                readonly type: "address";
            }, {
                readonly internalType: "address";
                readonly name: "prover";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "nativeAmount";
                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 internalType: "bool";
        readonly name: "allowPartial";
        readonly type: "bool";
    }, {
        readonly internalType: "address";
        readonly name: "funder";
        readonly type: "address";
    }, {
        readonly internalType: "address";
        readonly name: "permitContract";
        readonly type: "address";
    }];
    readonly name: "publishAndFundFor";
    readonly outputs: readonly [{
        readonly internalType: "bytes32";
        readonly name: "intentHash";
        readonly type: "bytes32";
    }, {
        readonly internalType: "address";
        readonly name: "vault";
        readonly type: "address";
    }];
    readonly stateMutability: "payable";
    readonly type: "function";
}, {
    readonly inputs: readonly [{
        readonly internalType: "uint64";
        readonly name: "destination";
        readonly type: "uint64";
    }, {
        readonly internalType: "bytes32";
        readonly name: "routeHash";
        readonly type: "bytes32";
    }, {
        readonly components: readonly [{
            readonly internalType: "uint64";
            readonly name: "deadline";
            readonly type: "uint64";
        }, {
            readonly internalType: "address";
            readonly name: "creator";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "prover";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "nativeAmount";
            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: "address";
        readonly name: "token";
        readonly type: "address";
    }];
    readonly name: "recoverToken";
    readonly outputs: readonly [];
    readonly stateMutability: "nonpayable";
    readonly type: "function";
}, {
    readonly inputs: readonly [{
        readonly internalType: "uint64";
        readonly name: "destination";
        readonly type: "uint64";
    }, {
        readonly internalType: "bytes32";
        readonly name: "routeHash";
        readonly type: "bytes32";
    }, {
        readonly components: readonly [{
            readonly internalType: "uint64";
            readonly name: "deadline";
            readonly type: "uint64";
        }, {
            readonly internalType: "address";
            readonly name: "creator";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "prover";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "nativeAmount";
            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 name: "refund";
    readonly outputs: readonly [];
    readonly stateMutability: "nonpayable";
    readonly type: "function";
}, {
    readonly inputs: readonly [{
        readonly internalType: "uint64";
        readonly name: "destination";
        readonly type: "uint64";
    }, {
        readonly internalType: "bytes32";
        readonly name: "routeHash";
        readonly type: "bytes32";
    }, {
        readonly components: readonly [{
            readonly internalType: "uint64";
            readonly name: "deadline";
            readonly type: "uint64";
        }, {
            readonly internalType: "address";
            readonly name: "creator";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "prover";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "nativeAmount";
            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: "address";
        readonly name: "refundee";
        readonly type: "address";
    }];
    readonly name: "refundTo";
    readonly outputs: readonly [];
    readonly stateMutability: "nonpayable";
    readonly type: "function";
}, {
    readonly inputs: readonly [{
        readonly internalType: "uint64";
        readonly name: "destination";
        readonly type: "uint64";
    }, {
        readonly internalType: "bytes32";
        readonly name: "routeHash";
        readonly type: "bytes32";
    }, {
        readonly components: readonly [{
            readonly internalType: "uint64";
            readonly name: "deadline";
            readonly type: "uint64";
        }, {
            readonly internalType: "address";
            readonly name: "creator";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "prover";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "nativeAmount";
            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 name: "withdraw";
    readonly outputs: readonly [];
    readonly stateMutability: "nonpayable";
    readonly type: "function";
}];
/**
 * Type-safe ABI for the IIntentSource contract
 */
export type IIntentSourceAbiType = typeof IIntentSourceAbi;
/**
 * Bytecode for the IIntentSource contract
 */
export declare const IIntentSourceBytecode = "0x";
/**
 * Deployed bytecode for the IIntentSource contract
 */
export declare const IIntentSourceDeployedBytecode = "0x";
