/* Autogenerated file. Do not edit manually. */
/* tslint:disable */
/* eslint-disable */
import { Contract, utils } from "ethers";
var _abi = [
    {
        type: "constructor",
        inputs: [
            {
                name: "_cctpMessageTransmitter",
                type: "address",
                internalType: "address",
            },
            {
                name: "_signer",
                type: "address",
                internalType: "address",
            },
            {
                name: "_donationBox",
                type: "address",
                internalType: "address",
            },
            {
                name: "_baseToken",
                type: "address",
                internalType: "address",
            },
            {
                name: "_multicallHandler",
                type: "address",
                internalType: "address",
            },
        ],
        stateMutability: "nonpayable",
    },
    {
        type: "fallback",
        stateMutability: "nonpayable",
    },
    {
        type: "receive",
        stateMutability: "payable",
    },
    {
        type: "function",
        name: "AUTHORIZED_FUNDED_FLOW_SLOT",
        inputs: [],
        outputs: [
            {
                name: "",
                type: "bytes32",
                internalType: "bytes32",
            },
        ],
        stateMutability: "view",
    },
    {
        type: "function",
        name: "DEFAULT_ADMIN_ROLE",
        inputs: [],
        outputs: [
            {
                name: "",
                type: "bytes32",
                internalType: "bytes32",
            },
        ],
        stateMutability: "view",
    },
    {
        type: "function",
        name: "FUNDS_SWEEPER_ROLE",
        inputs: [],
        outputs: [
            {
                name: "",
                type: "bytes32",
                internalType: "bytes32",
            },
        ],
        stateMutability: "view",
    },
    {
        type: "function",
        name: "PERMISSIONED_BOT_ROLE",
        inputs: [],
        outputs: [
            {
                name: "",
                type: "bytes32",
                internalType: "bytes32",
            },
        ],
        stateMutability: "view",
    },
    {
        type: "function",
        name: "baseToken",
        inputs: [],
        outputs: [
            {
                name: "",
                type: "address",
                internalType: "address",
            },
        ],
        stateMutability: "view",
    },
    {
        type: "function",
        name: "cctpMessageTransmitter",
        inputs: [],
        outputs: [
            {
                name: "",
                type: "address",
                internalType: "contract IMessageTransmitterV2",
            },
        ],
        stateMutability: "view",
    },
    {
        type: "function",
        name: "emergencyReceiveMessage",
        inputs: [
            {
                name: "message",
                type: "bytes",
                internalType: "bytes",
            },
            {
                name: "attestation",
                type: "bytes",
                internalType: "bytes",
            },
        ],
        outputs: [],
        stateMutability: "nonpayable",
    },
    {
        type: "function",
        name: "getRoleAdmin",
        inputs: [
            {
                name: "role",
                type: "bytes32",
                internalType: "bytes32",
            },
        ],
        outputs: [
            {
                name: "",
                type: "bytes32",
                internalType: "bytes32",
            },
        ],
        stateMutability: "view",
    },
    {
        type: "function",
        name: "grantRole",
        inputs: [
            {
                name: "role",
                type: "bytes32",
                internalType: "bytes32",
            },
            {
                name: "account",
                type: "address",
                internalType: "address",
            },
        ],
        outputs: [],
        stateMutability: "nonpayable",
    },
    {
        type: "function",
        name: "hasRole",
        inputs: [
            {
                name: "role",
                type: "bytes32",
                internalType: "bytes32",
            },
            {
                name: "account",
                type: "address",
                internalType: "address",
            },
        ],
        outputs: [
            {
                name: "",
                type: "bool",
                internalType: "bool",
            },
        ],
        stateMutability: "view",
    },
    {
        type: "function",
        name: "hyperCoreModule",
        inputs: [],
        outputs: [
            {
                name: "",
                type: "address",
                internalType: "address",
            },
        ],
        stateMutability: "view",
    },
    {
        type: "function",
        name: "multicallHandler",
        inputs: [],
        outputs: [
            {
                name: "",
                type: "address",
                internalType: "address",
            },
        ],
        stateMutability: "view",
    },
    {
        type: "function",
        name: "quoteDeadlineBuffer",
        inputs: [],
        outputs: [
            {
                name: "",
                type: "uint256",
                internalType: "uint256",
            },
        ],
        stateMutability: "view",
    },
    {
        type: "function",
        name: "receiveMessage",
        inputs: [
            {
                name: "message",
                type: "bytes",
                internalType: "bytes",
            },
            {
                name: "attestation",
                type: "bytes",
                internalType: "bytes",
            },
            {
                name: "signature",
                type: "bytes",
                internalType: "bytes",
            },
        ],
        outputs: [],
        stateMutability: "nonpayable",
    },
    {
        type: "function",
        name: "renounceRole",
        inputs: [
            {
                name: "role",
                type: "bytes32",
                internalType: "bytes32",
            },
            {
                name: "callerConfirmation",
                type: "address",
                internalType: "address",
            },
        ],
        outputs: [],
        stateMutability: "nonpayable",
    },
    {
        type: "function",
        name: "revokeRole",
        inputs: [
            {
                name: "role",
                type: "bytes32",
                internalType: "bytes32",
            },
            {
                name: "account",
                type: "address",
                internalType: "address",
            },
        ],
        outputs: [],
        stateMutability: "nonpayable",
    },
    {
        type: "function",
        name: "setQuoteDeadlineBuffer",
        inputs: [
            {
                name: "_quoteDeadlineBuffer",
                type: "uint256",
                internalType: "uint256",
            },
        ],
        outputs: [],
        stateMutability: "nonpayable",
    },
    {
        type: "function",
        name: "setSigner",
        inputs: [
            {
                name: "_signer",
                type: "address",
                internalType: "address",
            },
        ],
        outputs: [],
        stateMutability: "nonpayable",
    },
    {
        type: "function",
        name: "signer",
        inputs: [],
        outputs: [
            {
                name: "",
                type: "address",
                internalType: "address",
            },
        ],
        stateMutability: "view",
    },
    {
        type: "function",
        name: "supportsInterface",
        inputs: [
            {
                name: "interfaceId",
                type: "bytes4",
                internalType: "bytes4",
            },
        ],
        outputs: [
            {
                name: "",
                type: "bool",
                internalType: "bool",
            },
        ],
        stateMutability: "view",
    },
    {
        type: "function",
        name: "usedNonces",
        inputs: [
            {
                name: "nonce",
                type: "bytes32",
                internalType: "bytes32",
            },
        ],
        outputs: [
            {
                name: "",
                type: "bool",
                internalType: "bool",
            },
        ],
        stateMutability: "view",
    },
    {
        type: "function",
        name: "validateMessage",
        inputs: [
            {
                name: "message",
                type: "bytes",
                internalType: "bytes",
            },
        ],
        outputs: [
            {
                name: "",
                type: "bool",
                internalType: "bool",
            },
        ],
        stateMutability: "view",
    },
    {
        type: "event",
        name: "ArbitraryActionsExecuted",
        inputs: [
            {
                name: "quoteNonce",
                type: "bytes32",
                indexed: true,
                internalType: "bytes32",
            },
            {
                name: "initialToken",
                type: "address",
                indexed: true,
                internalType: "address",
            },
            {
                name: "initialAmount",
                type: "uint256",
                indexed: false,
                internalType: "uint256",
            },
            {
                name: "finalToken",
                type: "address",
                indexed: true,
                internalType: "address",
            },
            {
                name: "finalAmount",
                type: "uint256",
                indexed: false,
                internalType: "uint256",
            },
        ],
        anonymous: false,
    },
    {
        type: "event",
        name: "EmergencyReceiveMessage",
        inputs: [
            {
                name: "nonce",
                type: "bytes32",
                indexed: false,
                internalType: "bytes32",
            },
            {
                name: "finalRecipent",
                type: "address",
                indexed: false,
                internalType: "address",
            },
            {
                name: "finalToken",
                type: "address",
                indexed: false,
                internalType: "address",
            },
            {
                name: "amount",
                type: "uint256",
                indexed: false,
                internalType: "uint256",
            },
        ],
        anonymous: false,
    },
    {
        type: "event",
        name: "Initialized",
        inputs: [
            {
                name: "version",
                type: "uint64",
                indexed: false,
                internalType: "uint64",
            },
        ],
        anonymous: false,
    },
    {
        type: "event",
        name: "RoleAdminChanged",
        inputs: [
            {
                name: "role",
                type: "bytes32",
                indexed: true,
                internalType: "bytes32",
            },
            {
                name: "previousAdminRole",
                type: "bytes32",
                indexed: true,
                internalType: "bytes32",
            },
            {
                name: "newAdminRole",
                type: "bytes32",
                indexed: true,
                internalType: "bytes32",
            },
        ],
        anonymous: false,
    },
    {
        type: "event",
        name: "RoleGranted",
        inputs: [
            {
                name: "role",
                type: "bytes32",
                indexed: true,
                internalType: "bytes32",
            },
            {
                name: "account",
                type: "address",
                indexed: true,
                internalType: "address",
            },
            {
                name: "sender",
                type: "address",
                indexed: true,
                internalType: "address",
            },
        ],
        anonymous: false,
    },
    {
        type: "event",
        name: "RoleRevoked",
        inputs: [
            {
                name: "role",
                type: "bytes32",
                indexed: true,
                internalType: "bytes32",
            },
            {
                name: "account",
                type: "address",
                indexed: true,
                internalType: "address",
            },
            {
                name: "sender",
                type: "address",
                indexed: true,
                internalType: "address",
            },
        ],
        anonymous: false,
    },
    {
        type: "event",
        name: "SponsoredDepositForBurn",
        inputs: [
            {
                name: "quoteNonce",
                type: "bytes32",
                indexed: true,
                internalType: "bytes32",
            },
            {
                name: "originSender",
                type: "address",
                indexed: true,
                internalType: "address",
            },
            {
                name: "finalRecipient",
                type: "bytes32",
                indexed: true,
                internalType: "bytes32",
            },
            {
                name: "quoteDeadline",
                type: "uint256",
                indexed: false,
                internalType: "uint256",
            },
            {
                name: "maxBpsToSponsor",
                type: "uint256",
                indexed: false,
                internalType: "uint256",
            },
            {
                name: "maxUserSlippageBps",
                type: "uint256",
                indexed: false,
                internalType: "uint256",
            },
            {
                name: "finalToken",
                type: "bytes32",
                indexed: false,
                internalType: "bytes32",
            },
            {
                name: "signature",
                type: "bytes",
                indexed: false,
                internalType: "bytes",
            },
        ],
        anonymous: false,
    },
    {
        type: "error",
        name: "AccessControlBadConfirmation",
        inputs: [],
    },
    {
        type: "error",
        name: "AccessControlUnauthorizedAccount",
        inputs: [
            {
                name: "account",
                type: "address",
                internalType: "address",
            },
            {
                name: "neededRole",
                type: "bytes32",
                internalType: "bytes32",
            },
        ],
    },
    {
        type: "error",
        name: "CCTPMessageTransmitterFailed",
        inputs: [],
    },
    {
        type: "error",
        name: "FundedFlowNotAuthorized",
        inputs: [],
    },
    {
        type: "error",
        name: "InvalidBytes32",
        inputs: [],
    },
    {
        type: "error",
        name: "InvalidDeadline",
        inputs: [],
    },
    {
        type: "error",
        name: "InvalidInitialization",
        inputs: [],
    },
    {
        type: "error",
        name: "InvalidNonce",
        inputs: [],
    },
    {
        type: "error",
        name: "InvalidSignature",
        inputs: [],
    },
    {
        type: "error",
        name: "InvalidSourceDomain",
        inputs: [],
    },
    {
        type: "error",
        name: "NotInitializing",
        inputs: [],
    },
    {
        type: "error",
        name: "OutOfBounds",
        inputs: [],
    },
    {
        type: "error",
        name: "SafeERC20FailedOperation",
        inputs: [
            {
                name: "token",
                type: "address",
                internalType: "address",
            },
        ],
    },
];
var SponsoredCCTPDstPeriphery__factory = /** @class */ (function () {
    function SponsoredCCTPDstPeriphery__factory() {
    }
    SponsoredCCTPDstPeriphery__factory.createInterface = function () {
        return new utils.Interface(_abi);
    };
    SponsoredCCTPDstPeriphery__factory.connect = function (address, signerOrProvider) {
        return new Contract(address, _abi, signerOrProvider);
    };
    SponsoredCCTPDstPeriphery__factory.abi = _abi;
    return SponsoredCCTPDstPeriphery__factory;
}());
export { SponsoredCCTPDstPeriphery__factory };
//# sourceMappingURL=SponsoredCCTPDstPeriphery__factory.js.map