import { ContractFactory, ContractTransactionResponse } from "ethers";
import type { Signer, ContractDeployTransaction, ContractRunner } from "ethers";
import type { NonPayableOverrides } from "../common";
import type { Factory, FactoryInterface } from "../Factory";
type FactoryConstructorParams = [signer?: Signer] | ConstructorParameters<typeof ContractFactory>;
export declare class Factory__factory extends ContractFactory {
    constructor(...args: FactoryConstructorParams);
    getDeployTransaction(overrides?: NonPayableOverrides & {
        from?: string;
    }): Promise<ContractDeployTransaction>;
    deploy(overrides?: NonPayableOverrides & {
        from?: string;
    }): Promise<Factory & {
        deploymentTransaction(): ContractTransactionResponse;
    }>;
    connect(runner: ContractRunner | null): Factory__factory;
    static readonly bytecode = "0x6080604052348015600e575f5ffd5b506102678061001c5f395ff3fe608060405260043610610028575f3560e01c8063481286e61461002c578063cdcb760a14610067575b5f5ffd5b348015610037575f5ffd5b5061004b610046366004610140565b61007a565b6040516001600160a01b03909116815260200160405180910390f35b61004b610075366004610174565b6100a4565b6040805190810182905260208101839052308082525f91600b0160ff815360559020949350505050565b5f81515f036100c657604051631328927760e21b815260040160405180910390fd5b8282516020840134f590506001600160a01b0381166100f857604051633a0ba96160e11b815260040160405180910390fd5b604080516001600160a01b0383168152602081018590527f4108529e399e9cd5343c48ae06aa62a23c8c1b7c93f59d4691a0ea1e6f5b4603910160405180910390a192915050565b5f5f60408385031215610151575f5ffd5b50508035926020909101359150565b634e487b7160e01b5f52604160045260245ffd5b5f5f60408385031215610185575f5ffd5b82359150602083013567ffffffffffffffff8111156101a2575f5ffd5b8301601f810185136101b2575f5ffd5b803567ffffffffffffffff8111156101cc576101cc610160565b604051601f8201601f19908116603f0116810167ffffffffffffffff811182821017156101fb576101fb610160565b604052818152828201602001871015610212575f5ffd5b816020840160208301375f60208383010152809350505050925092905056fea26469706673582212200f90710e16e910e82d2b45a561ca07a2e41ff40da517295170f228fea88d77b564736f6c634300081c0033";
    static readonly abi: readonly [{
        readonly type: "function";
        readonly name: "computeAddress";
        readonly inputs: readonly [{
            readonly name: "salt";
            readonly type: "bytes32";
            readonly internalType: "bytes32";
        }, {
            readonly name: "creationCodeHash";
            readonly type: "bytes32";
            readonly internalType: "bytes32";
        }];
        readonly outputs: readonly [{
            readonly name: "addr";
            readonly type: "address";
            readonly internalType: "address";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "deploy";
        readonly inputs: readonly [{
            readonly name: "salt";
            readonly type: "bytes32";
            readonly internalType: "bytes32";
        }, {
            readonly name: "creationCode";
            readonly type: "bytes";
            readonly internalType: "bytes";
        }];
        readonly outputs: readonly [{
            readonly name: "addr";
            readonly type: "address";
            readonly internalType: "address";
        }];
        readonly stateMutability: "payable";
    }, {
        readonly type: "event";
        readonly name: "CreatedContract";
        readonly inputs: readonly [{
            readonly name: "addr";
            readonly type: "address";
            readonly indexed: false;
            readonly internalType: "address";
        }, {
            readonly name: "salt";
            readonly type: "bytes32";
            readonly indexed: false;
            readonly internalType: "bytes32";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "error";
        readonly name: "Create2EmptyBytecode";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "Create2FailedDeployment";
        readonly inputs: readonly [];
    }];
    static createInterface(): FactoryInterface;
    static connect(address: string, runner?: ContractRunner | null): Factory;
}
export {};
