import { Signer, ContractFactory, Overrides } from "ethers";
import type { Provider, TransactionRequest } from "@ethersproject/providers";
import type { HubPoolStore, HubPoolStoreInterface } from "../../../../../contracts/chain-adapters/utilities/HubPoolStore.sol/HubPoolStore";
type HubPoolStoreConstructorParams = [signer?: Signer] | ConstructorParameters<typeof ContractFactory>;
export declare class HubPoolStore__factory extends ContractFactory {
    constructor(...args: HubPoolStoreConstructorParams);
    deploy(_hubPool: string, overrides?: Overrides & {
        from?: string;
    }): Promise<HubPoolStore>;
    getDeployTransaction(_hubPool: string, overrides?: Overrides & {
        from?: string;
    }): TransactionRequest;
    attach(address: string): HubPoolStore;
    connect(signer: Signer): HubPoolStore__factory;
    static readonly bytecode = "0x60a034606c57601f61064a38819003918201601f19168301916001600160401b03831184841017607057808492602094604052833981010312606c57516001600160a01b0381168103606c576080526040516105c590816100858239608051818181608701526101640152f35b5f80fd5b634e487b7160e01b5f52604160045260245ffdfe6080806040526004361015610012575f80fd5b5f3560e01c9081631251fa801461037c57508063b6a31578146100af5763e19044021461003d575f80fd5b346100ab575f7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126100ab57602060405173ffffffffffffffffffffffffffffffffffffffff7f0000000000000000000000000000000000000000000000000000000000000000168152f35b5f80fd5b346100ab5760607ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126100ab5760043573ffffffffffffffffffffffffffffffffffffffff811681036100ab5760243567ffffffffffffffff81116100ab57366023820112156100ab5780600401359067ffffffffffffffff82116100ab57602481019060248336920101116100ab5760443580151581036100ab5773ffffffffffffffffffffffffffffffffffffffff7f0000000000000000000000000000000000000000000000000000000000000000169081330361035457156101fb57506001547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff81146101ce576101cc93600182016001556104f2565b005b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b6004935060e090604051948580927f4144fd610000000000000000000000000000000000000000000000000000000082525afa928315610349575f93610250575b5063ffffffff60c06101cc9401511661043e565b925060e0833d60e011610341575b8161026b60e093836103bf565b810103126100ab576040519260e0840184811067ffffffffffffffff8211176103145760405280518452602081015160208501526040810151604085015260608101516060850152608081015173ffffffffffffffffffffffffffffffffffffffff811681036100ab57608085015260a08101519060ff821682036100ab5760c09160a086015201519263ffffffff841684036100ab5760c081019390935263ffffffff61023c565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b3d915061025e565b6040513d5f823e3d90fd5b7f339c0f06000000000000000000000000000000000000000000000000000000005f5260045ffd5b346100ab5760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126100ab576020906004355f525f825260405f20548152f35b90601f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0910116810190811067ffffffffffffffff82111761031457604052565b601f82602094937fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe093818652868601375f8582860101520116010190565b91825f525f60205260405f20546104ed575f917f4ba0c1a2e56506b7c710f056ac26e5fdb506e29d3f760fb4b68857f7e7a61d229160405160208101908582526040808201526104c281610496606082018688610400565b037fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe081018352826103bf565b5190208585528460205260408520556104e8604051928392602084526020840191610400565b0390a3565b505050565b91929092835f525f60205260405f2054610589577f4ba0c1a2e56506b7c710f056ac26e5fdb506e29d3f760fb4b68857f7e7a61d22916040519373ffffffffffffffffffffffffffffffffffffffff6020860191169485825260408082015261056381610496606082018688610400565b519020855f525f60205260405f20556104e8604051928392602084526020840191610400565b5050505056fea264697066735822122030ffa8d028ea2a48d26f684c57392552f9c5893700aeeda4c6671544072dee9a64736f6c634300081e0033";
    static readonly abi: readonly [{
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "_hubPool";
            readonly type: "address";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "constructor";
    }, {
        readonly inputs: readonly [];
        readonly name: "NotHubPool";
        readonly type: "error";
    }, {
        readonly anonymous: false;
        readonly inputs: readonly [{
            readonly indexed: true;
            readonly internalType: "address";
            readonly name: "target";
            readonly type: "address";
        }, {
            readonly indexed: false;
            readonly internalType: "bytes";
            readonly name: "data";
            readonly type: "bytes";
        }, {
            readonly indexed: true;
            readonly internalType: "uint256";
            readonly name: "nonce";
            readonly type: "uint256";
        }];
        readonly name: "StoredCallData";
        readonly type: "event";
    }, {
        readonly inputs: readonly [];
        readonly name: "hubPool";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "";
            readonly type: "uint256";
        }];
        readonly name: "relayMessageCallData";
        readonly outputs: readonly [{
            readonly internalType: "bytes32";
            readonly name: "";
            readonly type: "bytes32";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "target";
            readonly type: "address";
        }, {
            readonly internalType: "bytes";
            readonly name: "data";
            readonly type: "bytes";
        }, {
            readonly internalType: "bool";
            readonly name: "isAdminSender";
            readonly type: "bool";
        }];
        readonly name: "storeRelayMessageCalldata";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }];
    static createInterface(): HubPoolStoreInterface;
    static connect(address: string, signerOrProvider: Signer | Provider): HubPoolStore;
}
export {};
