import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, ContractRunner, ContractMethod, Listener } from "ethers"; import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedListener, TypedContractMethod } from "../../common.js"; export interface IE3ProgramInterface extends Interface { getFunction(nameOrSignature: "publishInput" | "validate" | "verify"): FunctionFragment; encodeFunctionData(functionFragment: 'publishInput', values: [BigNumberish, BytesLike]): string; encodeFunctionData(functionFragment: 'validate', values: [BigNumberish, BigNumberish, BytesLike, BytesLike, BytesLike]): string; encodeFunctionData(functionFragment: 'verify', values: [BigNumberish, BytesLike, BytesLike]): string; decodeFunctionResult(functionFragment: 'publishInput', data: BytesLike): Result; decodeFunctionResult(functionFragment: 'validate', data: BytesLike): Result; decodeFunctionResult(functionFragment: 'verify', data: BytesLike): Result; } export interface IE3Program extends BaseContract { connect(runner?: ContractRunner | null): IE3Program; waitForDeployment(): Promise; interface: IE3ProgramInterface; queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; on(event: TCEvent, listener: TypedListener): Promise; on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; once(event: TCEvent, listener: TypedListener): Promise; once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; listeners(event: TCEvent): Promise>>; listeners(eventName?: string): Promise>; removeAllListeners(event?: TCEvent): Promise; publishInput: TypedContractMethod<[ e3Id: BigNumberish, data: BytesLike ], [ void ], 'nonpayable'>; validate: TypedContractMethod<[ e3Id: BigNumberish, seed: BigNumberish, e3ProgramParams: BytesLike, computeProviderParams: BytesLike, customParams: BytesLike ], [ string ], 'nonpayable'>; verify: TypedContractMethod<[ e3Id: BigNumberish, ciphertextOutputHash: BytesLike, proof: BytesLike ], [ boolean ], 'nonpayable'>; getFunction(key: string | FunctionFragment): T; getFunction(nameOrSignature: 'publishInput'): TypedContractMethod<[ e3Id: BigNumberish, data: BytesLike ], [ void ], 'nonpayable'>; getFunction(nameOrSignature: 'validate'): TypedContractMethod<[ e3Id: BigNumberish, seed: BigNumberish, e3ProgramParams: BytesLike, computeProviderParams: BytesLike, customParams: BytesLike ], [ string ], 'nonpayable'>; getFunction(nameOrSignature: 'verify'): TypedContractMethod<[ e3Id: BigNumberish, ciphertextOutputHash: BytesLike, proof: BytesLike ], [ boolean ], 'nonpayable'>; filters: {}; } //# sourceMappingURL=IE3Program.d.ts.map