import type { BaseContract, BigNumber, BigNumberish, BytesLike, CallOverrides, ContractTransaction, Overrides, PopulatedTransaction, Signer, utils } from "ethers";
import type { FunctionFragment, Result, EventFragment } from "@ethersproject/abi";
import type { Listener, Provider } from "@ethersproject/providers";
import type { TypedEventFilter, TypedEvent, TypedListener, OnEvent } from "../../../../common";
export type SetConfigParamStruct = {
    eid: BigNumberish;
    configType: BigNumberish;
    config: BytesLike;
};
export type SetConfigParamStructOutput = [number, number, string] & {
    eid: number;
    configType: number;
    config: string;
};
export interface IMessageLibManagerInterface extends utils.Interface {
    functions: {
        "defaultReceiveLibrary(uint32)": FunctionFragment;
        "defaultReceiveLibraryTimeout(uint32)": FunctionFragment;
        "defaultSendLibrary(uint32)": FunctionFragment;
        "getConfig(address,address,uint32,uint32)": FunctionFragment;
        "getReceiveLibrary(address,uint32)": FunctionFragment;
        "getRegisteredLibraries()": FunctionFragment;
        "getSendLibrary(address,uint32)": FunctionFragment;
        "isDefaultSendLibrary(address,uint32)": FunctionFragment;
        "isRegisteredLibrary(address)": FunctionFragment;
        "isSupportedEid(uint32)": FunctionFragment;
        "isValidReceiveLibrary(address,uint32,address)": FunctionFragment;
        "receiveLibraryTimeout(address,uint32)": FunctionFragment;
        "registerLibrary(address)": FunctionFragment;
        "setConfig(address,address,(uint32,uint32,bytes)[])": FunctionFragment;
        "setDefaultReceiveLibrary(uint32,address,uint256)": FunctionFragment;
        "setDefaultReceiveLibraryTimeout(uint32,address,uint256)": FunctionFragment;
        "setDefaultSendLibrary(uint32,address)": FunctionFragment;
        "setReceiveLibrary(address,uint32,address,uint256)": FunctionFragment;
        "setReceiveLibraryTimeout(address,uint32,address,uint256)": FunctionFragment;
        "setSendLibrary(address,uint32,address)": FunctionFragment;
    };
    getFunction(nameOrSignatureOrTopic: "defaultReceiveLibrary" | "defaultReceiveLibraryTimeout" | "defaultSendLibrary" | "getConfig" | "getReceiveLibrary" | "getRegisteredLibraries" | "getSendLibrary" | "isDefaultSendLibrary" | "isRegisteredLibrary" | "isSupportedEid" | "isValidReceiveLibrary" | "receiveLibraryTimeout" | "registerLibrary" | "setConfig" | "setDefaultReceiveLibrary" | "setDefaultReceiveLibraryTimeout" | "setDefaultSendLibrary" | "setReceiveLibrary" | "setReceiveLibraryTimeout" | "setSendLibrary"): FunctionFragment;
    encodeFunctionData(functionFragment: "defaultReceiveLibrary", values: [BigNumberish]): string;
    encodeFunctionData(functionFragment: "defaultReceiveLibraryTimeout", values: [BigNumberish]): string;
    encodeFunctionData(functionFragment: "defaultSendLibrary", values: [BigNumberish]): string;
    encodeFunctionData(functionFragment: "getConfig", values: [string, string, BigNumberish, BigNumberish]): string;
    encodeFunctionData(functionFragment: "getReceiveLibrary", values: [string, BigNumberish]): string;
    encodeFunctionData(functionFragment: "getRegisteredLibraries", values?: undefined): string;
    encodeFunctionData(functionFragment: "getSendLibrary", values: [string, BigNumberish]): string;
    encodeFunctionData(functionFragment: "isDefaultSendLibrary", values: [string, BigNumberish]): string;
    encodeFunctionData(functionFragment: "isRegisteredLibrary", values: [string]): string;
    encodeFunctionData(functionFragment: "isSupportedEid", values: [BigNumberish]): string;
    encodeFunctionData(functionFragment: "isValidReceiveLibrary", values: [string, BigNumberish, string]): string;
    encodeFunctionData(functionFragment: "receiveLibraryTimeout", values: [string, BigNumberish]): string;
    encodeFunctionData(functionFragment: "registerLibrary", values: [string]): string;
    encodeFunctionData(functionFragment: "setConfig", values: [string, string, SetConfigParamStruct[]]): string;
    encodeFunctionData(functionFragment: "setDefaultReceiveLibrary", values: [BigNumberish, string, BigNumberish]): string;
    encodeFunctionData(functionFragment: "setDefaultReceiveLibraryTimeout", values: [BigNumberish, string, BigNumberish]): string;
    encodeFunctionData(functionFragment: "setDefaultSendLibrary", values: [BigNumberish, string]): string;
    encodeFunctionData(functionFragment: "setReceiveLibrary", values: [string, BigNumberish, string, BigNumberish]): string;
    encodeFunctionData(functionFragment: "setReceiveLibraryTimeout", values: [string, BigNumberish, string, BigNumberish]): string;
    encodeFunctionData(functionFragment: "setSendLibrary", values: [string, BigNumberish, string]): string;
    decodeFunctionResult(functionFragment: "defaultReceiveLibrary", data: BytesLike): Result;
    decodeFunctionResult(functionFragment: "defaultReceiveLibraryTimeout", data: BytesLike): Result;
    decodeFunctionResult(functionFragment: "defaultSendLibrary", data: BytesLike): Result;
    decodeFunctionResult(functionFragment: "getConfig", data: BytesLike): Result;
    decodeFunctionResult(functionFragment: "getReceiveLibrary", data: BytesLike): Result;
    decodeFunctionResult(functionFragment: "getRegisteredLibraries", data: BytesLike): Result;
    decodeFunctionResult(functionFragment: "getSendLibrary", data: BytesLike): Result;
    decodeFunctionResult(functionFragment: "isDefaultSendLibrary", data: BytesLike): Result;
    decodeFunctionResult(functionFragment: "isRegisteredLibrary", data: BytesLike): Result;
    decodeFunctionResult(functionFragment: "isSupportedEid", data: BytesLike): Result;
    decodeFunctionResult(functionFragment: "isValidReceiveLibrary", data: BytesLike): Result;
    decodeFunctionResult(functionFragment: "receiveLibraryTimeout", data: BytesLike): Result;
    decodeFunctionResult(functionFragment: "registerLibrary", data: BytesLike): Result;
    decodeFunctionResult(functionFragment: "setConfig", data: BytesLike): Result;
    decodeFunctionResult(functionFragment: "setDefaultReceiveLibrary", data: BytesLike): Result;
    decodeFunctionResult(functionFragment: "setDefaultReceiveLibraryTimeout", data: BytesLike): Result;
    decodeFunctionResult(functionFragment: "setDefaultSendLibrary", data: BytesLike): Result;
    decodeFunctionResult(functionFragment: "setReceiveLibrary", data: BytesLike): Result;
    decodeFunctionResult(functionFragment: "setReceiveLibraryTimeout", data: BytesLike): Result;
    decodeFunctionResult(functionFragment: "setSendLibrary", data: BytesLike): Result;
    events: {
        "DefaultReceiveLibrarySet(uint32,address)": EventFragment;
        "DefaultReceiveLibraryTimeoutSet(uint32,address,uint256)": EventFragment;
        "DefaultSendLibrarySet(uint32,address)": EventFragment;
        "LibraryRegistered(address)": EventFragment;
        "ReceiveLibrarySet(address,uint32,address)": EventFragment;
        "ReceiveLibraryTimeoutSet(address,uint32,address,uint256)": EventFragment;
        "SendLibrarySet(address,uint32,address)": EventFragment;
    };
    getEvent(nameOrSignatureOrTopic: "DefaultReceiveLibrarySet"): EventFragment;
    getEvent(nameOrSignatureOrTopic: "DefaultReceiveLibraryTimeoutSet"): EventFragment;
    getEvent(nameOrSignatureOrTopic: "DefaultSendLibrarySet"): EventFragment;
    getEvent(nameOrSignatureOrTopic: "LibraryRegistered"): EventFragment;
    getEvent(nameOrSignatureOrTopic: "ReceiveLibrarySet"): EventFragment;
    getEvent(nameOrSignatureOrTopic: "ReceiveLibraryTimeoutSet"): EventFragment;
    getEvent(nameOrSignatureOrTopic: "SendLibrarySet"): EventFragment;
}
export interface DefaultReceiveLibrarySetEventObject {
    eid: number;
    newLib: string;
}
export type DefaultReceiveLibrarySetEvent = TypedEvent<[
    number,
    string
], DefaultReceiveLibrarySetEventObject>;
export type DefaultReceiveLibrarySetEventFilter = TypedEventFilter<DefaultReceiveLibrarySetEvent>;
export interface DefaultReceiveLibraryTimeoutSetEventObject {
    eid: number;
    oldLib: string;
    expiry: BigNumber;
}
export type DefaultReceiveLibraryTimeoutSetEvent = TypedEvent<[
    number,
    string,
    BigNumber
], DefaultReceiveLibraryTimeoutSetEventObject>;
export type DefaultReceiveLibraryTimeoutSetEventFilter = TypedEventFilter<DefaultReceiveLibraryTimeoutSetEvent>;
export interface DefaultSendLibrarySetEventObject {
    eid: number;
    newLib: string;
}
export type DefaultSendLibrarySetEvent = TypedEvent<[
    number,
    string
], DefaultSendLibrarySetEventObject>;
export type DefaultSendLibrarySetEventFilter = TypedEventFilter<DefaultSendLibrarySetEvent>;
export interface LibraryRegisteredEventObject {
    newLib: string;
}
export type LibraryRegisteredEvent = TypedEvent<[
    string
], LibraryRegisteredEventObject>;
export type LibraryRegisteredEventFilter = TypedEventFilter<LibraryRegisteredEvent>;
export interface ReceiveLibrarySetEventObject {
    receiver: string;
    eid: number;
    newLib: string;
}
export type ReceiveLibrarySetEvent = TypedEvent<[
    string,
    number,
    string
], ReceiveLibrarySetEventObject>;
export type ReceiveLibrarySetEventFilter = TypedEventFilter<ReceiveLibrarySetEvent>;
export interface ReceiveLibraryTimeoutSetEventObject {
    receiver: string;
    eid: number;
    oldLib: string;
    timeout: BigNumber;
}
export type ReceiveLibraryTimeoutSetEvent = TypedEvent<[
    string,
    number,
    string,
    BigNumber
], ReceiveLibraryTimeoutSetEventObject>;
export type ReceiveLibraryTimeoutSetEventFilter = TypedEventFilter<ReceiveLibraryTimeoutSetEvent>;
export interface SendLibrarySetEventObject {
    sender: string;
    eid: number;
    newLib: string;
}
export type SendLibrarySetEvent = TypedEvent<[
    string,
    number,
    string
], SendLibrarySetEventObject>;
export type SendLibrarySetEventFilter = TypedEventFilter<SendLibrarySetEvent>;
export interface IMessageLibManager extends BaseContract {
    connect(signerOrProvider: Signer | Provider | string): this;
    attach(addressOrName: string): this;
    deployed(): Promise<this>;
    interface: IMessageLibManagerInterface;
    queryFilter<TEvent extends TypedEvent>(event: TypedEventFilter<TEvent>, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise<Array<TEvent>>;
    listeners<TEvent extends TypedEvent>(eventFilter?: TypedEventFilter<TEvent>): Array<TypedListener<TEvent>>;
    listeners(eventName?: string): Array<Listener>;
    removeAllListeners<TEvent extends TypedEvent>(eventFilter: TypedEventFilter<TEvent>): this;
    removeAllListeners(eventName?: string): this;
    off: OnEvent<this>;
    on: OnEvent<this>;
    once: OnEvent<this>;
    removeListener: OnEvent<this>;
    functions: {
        defaultReceiveLibrary(_eid: BigNumberish, overrides?: CallOverrides): Promise<[string]>;
        defaultReceiveLibraryTimeout(_eid: BigNumberish, overrides?: CallOverrides): Promise<[string, BigNumber] & {
            lib: string;
            expiry: BigNumber;
        }>;
        defaultSendLibrary(_eid: BigNumberish, overrides?: CallOverrides): Promise<[string]>;
        getConfig(_oapp: string, _lib: string, _eid: BigNumberish, _configType: BigNumberish, overrides?: CallOverrides): Promise<[string] & {
            config: string;
        }>;
        getReceiveLibrary(_receiver: string, _eid: BigNumberish, overrides?: CallOverrides): Promise<[string, boolean] & {
            lib: string;
            isDefault: boolean;
        }>;
        getRegisteredLibraries(overrides?: CallOverrides): Promise<[string[]]>;
        getSendLibrary(_sender: string, _eid: BigNumberish, overrides?: CallOverrides): Promise<[string] & {
            lib: string;
        }>;
        isDefaultSendLibrary(_sender: string, _eid: BigNumberish, overrides?: CallOverrides): Promise<[boolean]>;
        isRegisteredLibrary(_lib: string, overrides?: CallOverrides): Promise<[boolean]>;
        isSupportedEid(_eid: BigNumberish, overrides?: CallOverrides): Promise<[boolean]>;
        isValidReceiveLibrary(_receiver: string, _eid: BigNumberish, _lib: string, overrides?: CallOverrides): Promise<[boolean]>;
        receiveLibraryTimeout(_receiver: string, _eid: BigNumberish, overrides?: CallOverrides): Promise<[string, BigNumber] & {
            lib: string;
            expiry: BigNumber;
        }>;
        registerLibrary(_lib: string, overrides?: Overrides & {
            from?: string;
        }): Promise<ContractTransaction>;
        setConfig(_oapp: string, _lib: string, _params: SetConfigParamStruct[], overrides?: Overrides & {
            from?: string;
        }): Promise<ContractTransaction>;
        setDefaultReceiveLibrary(_eid: BigNumberish, _newLib: string, _gracePeriod: BigNumberish, overrides?: Overrides & {
            from?: string;
        }): Promise<ContractTransaction>;
        setDefaultReceiveLibraryTimeout(_eid: BigNumberish, _lib: string, _expiry: BigNumberish, overrides?: Overrides & {
            from?: string;
        }): Promise<ContractTransaction>;
        setDefaultSendLibrary(_eid: BigNumberish, _newLib: string, overrides?: Overrides & {
            from?: string;
        }): Promise<ContractTransaction>;
        setReceiveLibrary(_oapp: string, _eid: BigNumberish, _newLib: string, _gracePeriod: BigNumberish, overrides?: Overrides & {
            from?: string;
        }): Promise<ContractTransaction>;
        setReceiveLibraryTimeout(_oapp: string, _eid: BigNumberish, _lib: string, _expiry: BigNumberish, overrides?: Overrides & {
            from?: string;
        }): Promise<ContractTransaction>;
        setSendLibrary(_oapp: string, _eid: BigNumberish, _newLib: string, overrides?: Overrides & {
            from?: string;
        }): Promise<ContractTransaction>;
    };
    defaultReceiveLibrary(_eid: BigNumberish, overrides?: CallOverrides): Promise<string>;
    defaultReceiveLibraryTimeout(_eid: BigNumberish, overrides?: CallOverrides): Promise<[string, BigNumber] & {
        lib: string;
        expiry: BigNumber;
    }>;
    defaultSendLibrary(_eid: BigNumberish, overrides?: CallOverrides): Promise<string>;
    getConfig(_oapp: string, _lib: string, _eid: BigNumberish, _configType: BigNumberish, overrides?: CallOverrides): Promise<string>;
    getReceiveLibrary(_receiver: string, _eid: BigNumberish, overrides?: CallOverrides): Promise<[string, boolean] & {
        lib: string;
        isDefault: boolean;
    }>;
    getRegisteredLibraries(overrides?: CallOverrides): Promise<string[]>;
    getSendLibrary(_sender: string, _eid: BigNumberish, overrides?: CallOverrides): Promise<string>;
    isDefaultSendLibrary(_sender: string, _eid: BigNumberish, overrides?: CallOverrides): Promise<boolean>;
    isRegisteredLibrary(_lib: string, overrides?: CallOverrides): Promise<boolean>;
    isSupportedEid(_eid: BigNumberish, overrides?: CallOverrides): Promise<boolean>;
    isValidReceiveLibrary(_receiver: string, _eid: BigNumberish, _lib: string, overrides?: CallOverrides): Promise<boolean>;
    receiveLibraryTimeout(_receiver: string, _eid: BigNumberish, overrides?: CallOverrides): Promise<[string, BigNumber] & {
        lib: string;
        expiry: BigNumber;
    }>;
    registerLibrary(_lib: string, overrides?: Overrides & {
        from?: string;
    }): Promise<ContractTransaction>;
    setConfig(_oapp: string, _lib: string, _params: SetConfigParamStruct[], overrides?: Overrides & {
        from?: string;
    }): Promise<ContractTransaction>;
    setDefaultReceiveLibrary(_eid: BigNumberish, _newLib: string, _gracePeriod: BigNumberish, overrides?: Overrides & {
        from?: string;
    }): Promise<ContractTransaction>;
    setDefaultReceiveLibraryTimeout(_eid: BigNumberish, _lib: string, _expiry: BigNumberish, overrides?: Overrides & {
        from?: string;
    }): Promise<ContractTransaction>;
    setDefaultSendLibrary(_eid: BigNumberish, _newLib: string, overrides?: Overrides & {
        from?: string;
    }): Promise<ContractTransaction>;
    setReceiveLibrary(_oapp: string, _eid: BigNumberish, _newLib: string, _gracePeriod: BigNumberish, overrides?: Overrides & {
        from?: string;
    }): Promise<ContractTransaction>;
    setReceiveLibraryTimeout(_oapp: string, _eid: BigNumberish, _lib: string, _expiry: BigNumberish, overrides?: Overrides & {
        from?: string;
    }): Promise<ContractTransaction>;
    setSendLibrary(_oapp: string, _eid: BigNumberish, _newLib: string, overrides?: Overrides & {
        from?: string;
    }): Promise<ContractTransaction>;
    callStatic: {
        defaultReceiveLibrary(_eid: BigNumberish, overrides?: CallOverrides): Promise<string>;
        defaultReceiveLibraryTimeout(_eid: BigNumberish, overrides?: CallOverrides): Promise<[string, BigNumber] & {
            lib: string;
            expiry: BigNumber;
        }>;
        defaultSendLibrary(_eid: BigNumberish, overrides?: CallOverrides): Promise<string>;
        getConfig(_oapp: string, _lib: string, _eid: BigNumberish, _configType: BigNumberish, overrides?: CallOverrides): Promise<string>;
        getReceiveLibrary(_receiver: string, _eid: BigNumberish, overrides?: CallOverrides): Promise<[string, boolean] & {
            lib: string;
            isDefault: boolean;
        }>;
        getRegisteredLibraries(overrides?: CallOverrides): Promise<string[]>;
        getSendLibrary(_sender: string, _eid: BigNumberish, overrides?: CallOverrides): Promise<string>;
        isDefaultSendLibrary(_sender: string, _eid: BigNumberish, overrides?: CallOverrides): Promise<boolean>;
        isRegisteredLibrary(_lib: string, overrides?: CallOverrides): Promise<boolean>;
        isSupportedEid(_eid: BigNumberish, overrides?: CallOverrides): Promise<boolean>;
        isValidReceiveLibrary(_receiver: string, _eid: BigNumberish, _lib: string, overrides?: CallOverrides): Promise<boolean>;
        receiveLibraryTimeout(_receiver: string, _eid: BigNumberish, overrides?: CallOverrides): Promise<[string, BigNumber] & {
            lib: string;
            expiry: BigNumber;
        }>;
        registerLibrary(_lib: string, overrides?: CallOverrides): Promise<void>;
        setConfig(_oapp: string, _lib: string, _params: SetConfigParamStruct[], overrides?: CallOverrides): Promise<void>;
        setDefaultReceiveLibrary(_eid: BigNumberish, _newLib: string, _gracePeriod: BigNumberish, overrides?: CallOverrides): Promise<void>;
        setDefaultReceiveLibraryTimeout(_eid: BigNumberish, _lib: string, _expiry: BigNumberish, overrides?: CallOverrides): Promise<void>;
        setDefaultSendLibrary(_eid: BigNumberish, _newLib: string, overrides?: CallOverrides): Promise<void>;
        setReceiveLibrary(_oapp: string, _eid: BigNumberish, _newLib: string, _gracePeriod: BigNumberish, overrides?: CallOverrides): Promise<void>;
        setReceiveLibraryTimeout(_oapp: string, _eid: BigNumberish, _lib: string, _expiry: BigNumberish, overrides?: CallOverrides): Promise<void>;
        setSendLibrary(_oapp: string, _eid: BigNumberish, _newLib: string, overrides?: CallOverrides): Promise<void>;
    };
    filters: {
        "DefaultReceiveLibrarySet(uint32,address)"(eid?: null, newLib?: null): DefaultReceiveLibrarySetEventFilter;
        DefaultReceiveLibrarySet(eid?: null, newLib?: null): DefaultReceiveLibrarySetEventFilter;
        "DefaultReceiveLibraryTimeoutSet(uint32,address,uint256)"(eid?: null, oldLib?: null, expiry?: null): DefaultReceiveLibraryTimeoutSetEventFilter;
        DefaultReceiveLibraryTimeoutSet(eid?: null, oldLib?: null, expiry?: null): DefaultReceiveLibraryTimeoutSetEventFilter;
        "DefaultSendLibrarySet(uint32,address)"(eid?: null, newLib?: null): DefaultSendLibrarySetEventFilter;
        DefaultSendLibrarySet(eid?: null, newLib?: null): DefaultSendLibrarySetEventFilter;
        "LibraryRegistered(address)"(newLib?: null): LibraryRegisteredEventFilter;
        LibraryRegistered(newLib?: null): LibraryRegisteredEventFilter;
        "ReceiveLibrarySet(address,uint32,address)"(receiver?: null, eid?: null, newLib?: null): ReceiveLibrarySetEventFilter;
        ReceiveLibrarySet(receiver?: null, eid?: null, newLib?: null): ReceiveLibrarySetEventFilter;
        "ReceiveLibraryTimeoutSet(address,uint32,address,uint256)"(receiver?: null, eid?: null, oldLib?: null, timeout?: null): ReceiveLibraryTimeoutSetEventFilter;
        ReceiveLibraryTimeoutSet(receiver?: null, eid?: null, oldLib?: null, timeout?: null): ReceiveLibraryTimeoutSetEventFilter;
        "SendLibrarySet(address,uint32,address)"(sender?: null, eid?: null, newLib?: null): SendLibrarySetEventFilter;
        SendLibrarySet(sender?: null, eid?: null, newLib?: null): SendLibrarySetEventFilter;
    };
    estimateGas: {
        defaultReceiveLibrary(_eid: BigNumberish, overrides?: CallOverrides): Promise<BigNumber>;
        defaultReceiveLibraryTimeout(_eid: BigNumberish, overrides?: CallOverrides): Promise<BigNumber>;
        defaultSendLibrary(_eid: BigNumberish, overrides?: CallOverrides): Promise<BigNumber>;
        getConfig(_oapp: string, _lib: string, _eid: BigNumberish, _configType: BigNumberish, overrides?: CallOverrides): Promise<BigNumber>;
        getReceiveLibrary(_receiver: string, _eid: BigNumberish, overrides?: CallOverrides): Promise<BigNumber>;
        getRegisteredLibraries(overrides?: CallOverrides): Promise<BigNumber>;
        getSendLibrary(_sender: string, _eid: BigNumberish, overrides?: CallOverrides): Promise<BigNumber>;
        isDefaultSendLibrary(_sender: string, _eid: BigNumberish, overrides?: CallOverrides): Promise<BigNumber>;
        isRegisteredLibrary(_lib: string, overrides?: CallOverrides): Promise<BigNumber>;
        isSupportedEid(_eid: BigNumberish, overrides?: CallOverrides): Promise<BigNumber>;
        isValidReceiveLibrary(_receiver: string, _eid: BigNumberish, _lib: string, overrides?: CallOverrides): Promise<BigNumber>;
        receiveLibraryTimeout(_receiver: string, _eid: BigNumberish, overrides?: CallOverrides): Promise<BigNumber>;
        registerLibrary(_lib: string, overrides?: Overrides & {
            from?: string;
        }): Promise<BigNumber>;
        setConfig(_oapp: string, _lib: string, _params: SetConfigParamStruct[], overrides?: Overrides & {
            from?: string;
        }): Promise<BigNumber>;
        setDefaultReceiveLibrary(_eid: BigNumberish, _newLib: string, _gracePeriod: BigNumberish, overrides?: Overrides & {
            from?: string;
        }): Promise<BigNumber>;
        setDefaultReceiveLibraryTimeout(_eid: BigNumberish, _lib: string, _expiry: BigNumberish, overrides?: Overrides & {
            from?: string;
        }): Promise<BigNumber>;
        setDefaultSendLibrary(_eid: BigNumberish, _newLib: string, overrides?: Overrides & {
            from?: string;
        }): Promise<BigNumber>;
        setReceiveLibrary(_oapp: string, _eid: BigNumberish, _newLib: string, _gracePeriod: BigNumberish, overrides?: Overrides & {
            from?: string;
        }): Promise<BigNumber>;
        setReceiveLibraryTimeout(_oapp: string, _eid: BigNumberish, _lib: string, _expiry: BigNumberish, overrides?: Overrides & {
            from?: string;
        }): Promise<BigNumber>;
        setSendLibrary(_oapp: string, _eid: BigNumberish, _newLib: string, overrides?: Overrides & {
            from?: string;
        }): Promise<BigNumber>;
    };
    populateTransaction: {
        defaultReceiveLibrary(_eid: BigNumberish, overrides?: CallOverrides): Promise<PopulatedTransaction>;
        defaultReceiveLibraryTimeout(_eid: BigNumberish, overrides?: CallOverrides): Promise<PopulatedTransaction>;
        defaultSendLibrary(_eid: BigNumberish, overrides?: CallOverrides): Promise<PopulatedTransaction>;
        getConfig(_oapp: string, _lib: string, _eid: BigNumberish, _configType: BigNumberish, overrides?: CallOverrides): Promise<PopulatedTransaction>;
        getReceiveLibrary(_receiver: string, _eid: BigNumberish, overrides?: CallOverrides): Promise<PopulatedTransaction>;
        getRegisteredLibraries(overrides?: CallOverrides): Promise<PopulatedTransaction>;
        getSendLibrary(_sender: string, _eid: BigNumberish, overrides?: CallOverrides): Promise<PopulatedTransaction>;
        isDefaultSendLibrary(_sender: string, _eid: BigNumberish, overrides?: CallOverrides): Promise<PopulatedTransaction>;
        isRegisteredLibrary(_lib: string, overrides?: CallOverrides): Promise<PopulatedTransaction>;
        isSupportedEid(_eid: BigNumberish, overrides?: CallOverrides): Promise<PopulatedTransaction>;
        isValidReceiveLibrary(_receiver: string, _eid: BigNumberish, _lib: string, overrides?: CallOverrides): Promise<PopulatedTransaction>;
        receiveLibraryTimeout(_receiver: string, _eid: BigNumberish, overrides?: CallOverrides): Promise<PopulatedTransaction>;
        registerLibrary(_lib: string, overrides?: Overrides & {
            from?: string;
        }): Promise<PopulatedTransaction>;
        setConfig(_oapp: string, _lib: string, _params: SetConfigParamStruct[], overrides?: Overrides & {
            from?: string;
        }): Promise<PopulatedTransaction>;
        setDefaultReceiveLibrary(_eid: BigNumberish, _newLib: string, _gracePeriod: BigNumberish, overrides?: Overrides & {
            from?: string;
        }): Promise<PopulatedTransaction>;
        setDefaultReceiveLibraryTimeout(_eid: BigNumberish, _lib: string, _expiry: BigNumberish, overrides?: Overrides & {
            from?: string;
        }): Promise<PopulatedTransaction>;
        setDefaultSendLibrary(_eid: BigNumberish, _newLib: string, overrides?: Overrides & {
            from?: string;
        }): Promise<PopulatedTransaction>;
        setReceiveLibrary(_oapp: string, _eid: BigNumberish, _newLib: string, _gracePeriod: BigNumberish, overrides?: Overrides & {
            from?: string;
        }): Promise<PopulatedTransaction>;
        setReceiveLibraryTimeout(_oapp: string, _eid: BigNumberish, _lib: string, _expiry: BigNumberish, overrides?: Overrides & {
            from?: string;
        }): Promise<PopulatedTransaction>;
        setSendLibrary(_oapp: string, _eid: BigNumberish, _newLib: string, overrides?: Overrides & {
            from?: string;
        }): Promise<PopulatedTransaction>;
    };
}
