import type { BaseContract, BigNumber, 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 interface NounsDAOProxyInterface extends utils.Interface { functions: { "_setImplementation(address)": FunctionFragment; "admin()": FunctionFragment; "implementation()": FunctionFragment; "pendingAdmin()": FunctionFragment; }; getFunction(nameOrSignatureOrTopic: "_setImplementation" | "admin" | "implementation" | "pendingAdmin"): FunctionFragment; encodeFunctionData(functionFragment: "_setImplementation", values: [string]): string; encodeFunctionData(functionFragment: "admin", values?: undefined): string; encodeFunctionData(functionFragment: "implementation", values?: undefined): string; encodeFunctionData(functionFragment: "pendingAdmin", values?: undefined): string; decodeFunctionResult(functionFragment: "_setImplementation", data: BytesLike): Result; decodeFunctionResult(functionFragment: "admin", data: BytesLike): Result; decodeFunctionResult(functionFragment: "implementation", data: BytesLike): Result; decodeFunctionResult(functionFragment: "pendingAdmin", data: BytesLike): Result; events: { "NewAdmin(address,address)": EventFragment; "NewImplementation(address,address)": EventFragment; "NewPendingAdmin(address,address)": EventFragment; "NewVetoer(address,address)": EventFragment; "ProposalCanceled(uint256)": EventFragment; "ProposalCreated(uint256,address,address[],uint256[],string[],bytes[],uint256,uint256,string)": EventFragment; "ProposalCreatedWithRequirements(uint256,address,address[],uint256[],string[],bytes[],uint256,uint256,uint256,uint256,string)": EventFragment; "ProposalExecuted(uint256)": EventFragment; "ProposalQueued(uint256,uint256)": EventFragment; "ProposalThresholdBPSSet(uint256,uint256)": EventFragment; "ProposalVetoed(uint256)": EventFragment; "QuorumVotesBPSSet(uint256,uint256)": EventFragment; "VoteCast(address,uint256,uint8,uint256,string)": EventFragment; "VotingDelaySet(uint256,uint256)": EventFragment; "VotingPeriodSet(uint256,uint256)": EventFragment; }; getEvent(nameOrSignatureOrTopic: "NewAdmin"): EventFragment; getEvent(nameOrSignatureOrTopic: "NewImplementation"): EventFragment; getEvent(nameOrSignatureOrTopic: "NewPendingAdmin"): EventFragment; getEvent(nameOrSignatureOrTopic: "NewVetoer"): EventFragment; getEvent(nameOrSignatureOrTopic: "ProposalCanceled"): EventFragment; getEvent(nameOrSignatureOrTopic: "ProposalCreated"): EventFragment; getEvent(nameOrSignatureOrTopic: "ProposalCreatedWithRequirements"): EventFragment; getEvent(nameOrSignatureOrTopic: "ProposalExecuted"): EventFragment; getEvent(nameOrSignatureOrTopic: "ProposalQueued"): EventFragment; getEvent(nameOrSignatureOrTopic: "ProposalThresholdBPSSet"): EventFragment; getEvent(nameOrSignatureOrTopic: "ProposalVetoed"): EventFragment; getEvent(nameOrSignatureOrTopic: "QuorumVotesBPSSet"): EventFragment; getEvent(nameOrSignatureOrTopic: "VoteCast"): EventFragment; getEvent(nameOrSignatureOrTopic: "VotingDelaySet"): EventFragment; getEvent(nameOrSignatureOrTopic: "VotingPeriodSet"): EventFragment; } export interface NewAdminEventObject { oldAdmin: string; newAdmin: string; } export declare type NewAdminEvent = TypedEvent<[string, string], NewAdminEventObject>; export declare type NewAdminEventFilter = TypedEventFilter; export interface NewImplementationEventObject { oldImplementation: string; newImplementation: string; } export declare type NewImplementationEvent = TypedEvent<[ string, string ], NewImplementationEventObject>; export declare type NewImplementationEventFilter = TypedEventFilter; export interface NewPendingAdminEventObject { oldPendingAdmin: string; newPendingAdmin: string; } export declare type NewPendingAdminEvent = TypedEvent<[ string, string ], NewPendingAdminEventObject>; export declare type NewPendingAdminEventFilter = TypedEventFilter; export interface NewVetoerEventObject { oldVetoer: string; newVetoer: string; } export declare type NewVetoerEvent = TypedEvent<[string, string], NewVetoerEventObject>; export declare type NewVetoerEventFilter = TypedEventFilter; export interface ProposalCanceledEventObject { id: BigNumber; } export declare type ProposalCanceledEvent = TypedEvent<[ BigNumber ], ProposalCanceledEventObject>; export declare type ProposalCanceledEventFilter = TypedEventFilter; export interface ProposalCreatedEventObject { id: BigNumber; proposer: string; targets: string[]; values: BigNumber[]; signatures: string[]; calldatas: string[]; startBlock: BigNumber; endBlock: BigNumber; description: string; } export declare type ProposalCreatedEvent = TypedEvent<[ BigNumber, string, string[], BigNumber[], string[], string[], BigNumber, BigNumber, string ], ProposalCreatedEventObject>; export declare type ProposalCreatedEventFilter = TypedEventFilter; export interface ProposalCreatedWithRequirementsEventObject { id: BigNumber; proposer: string; targets: string[]; values: BigNumber[]; signatures: string[]; calldatas: string[]; startBlock: BigNumber; endBlock: BigNumber; proposalThreshold: BigNumber; quorumVotes: BigNumber; description: string; } export declare type ProposalCreatedWithRequirementsEvent = TypedEvent<[ BigNumber, string, string[], BigNumber[], string[], string[], BigNumber, BigNumber, BigNumber, BigNumber, string ], ProposalCreatedWithRequirementsEventObject>; export declare type ProposalCreatedWithRequirementsEventFilter = TypedEventFilter; export interface ProposalExecutedEventObject { id: BigNumber; } export declare type ProposalExecutedEvent = TypedEvent<[ BigNumber ], ProposalExecutedEventObject>; export declare type ProposalExecutedEventFilter = TypedEventFilter; export interface ProposalQueuedEventObject { id: BigNumber; eta: BigNumber; } export declare type ProposalQueuedEvent = TypedEvent<[ BigNumber, BigNumber ], ProposalQueuedEventObject>; export declare type ProposalQueuedEventFilter = TypedEventFilter; export interface ProposalThresholdBPSSetEventObject { oldProposalThresholdBPS: BigNumber; newProposalThresholdBPS: BigNumber; } export declare type ProposalThresholdBPSSetEvent = TypedEvent<[ BigNumber, BigNumber ], ProposalThresholdBPSSetEventObject>; export declare type ProposalThresholdBPSSetEventFilter = TypedEventFilter; export interface ProposalVetoedEventObject { id: BigNumber; } export declare type ProposalVetoedEvent = TypedEvent<[ BigNumber ], ProposalVetoedEventObject>; export declare type ProposalVetoedEventFilter = TypedEventFilter; export interface QuorumVotesBPSSetEventObject { oldQuorumVotesBPS: BigNumber; newQuorumVotesBPS: BigNumber; } export declare type QuorumVotesBPSSetEvent = TypedEvent<[ BigNumber, BigNumber ], QuorumVotesBPSSetEventObject>; export declare type QuorumVotesBPSSetEventFilter = TypedEventFilter; export interface VoteCastEventObject { voter: string; proposalId: BigNumber; support: number; votes: BigNumber; reason: string; } export declare type VoteCastEvent = TypedEvent<[ string, BigNumber, number, BigNumber, string ], VoteCastEventObject>; export declare type VoteCastEventFilter = TypedEventFilter; export interface VotingDelaySetEventObject { oldVotingDelay: BigNumber; newVotingDelay: BigNumber; } export declare type VotingDelaySetEvent = TypedEvent<[ BigNumber, BigNumber ], VotingDelaySetEventObject>; export declare type VotingDelaySetEventFilter = TypedEventFilter; export interface VotingPeriodSetEventObject { oldVotingPeriod: BigNumber; newVotingPeriod: BigNumber; } export declare type VotingPeriodSetEvent = TypedEvent<[ BigNumber, BigNumber ], VotingPeriodSetEventObject>; export declare type VotingPeriodSetEventFilter = TypedEventFilter; export interface NounsDAOProxy extends BaseContract { connect(signerOrProvider: Signer | Provider | string): this; attach(addressOrName: string): this; deployed(): Promise; interface: NounsDAOProxyInterface; queryFilter(event: TypedEventFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>; listeners(eventFilter?: TypedEventFilter): Array>; listeners(eventName?: string): Array; removeAllListeners(eventFilter: TypedEventFilter): this; removeAllListeners(eventName?: string): this; off: OnEvent; on: OnEvent; once: OnEvent; removeListener: OnEvent; functions: { _setImplementation(implementation_: string, overrides?: Overrides & { from?: string | Promise; }): Promise; admin(overrides?: CallOverrides): Promise<[string]>; implementation(overrides?: CallOverrides): Promise<[string]>; pendingAdmin(overrides?: CallOverrides): Promise<[string]>; }; _setImplementation(implementation_: string, overrides?: Overrides & { from?: string | Promise; }): Promise; admin(overrides?: CallOverrides): Promise; implementation(overrides?: CallOverrides): Promise; pendingAdmin(overrides?: CallOverrides): Promise; callStatic: { _setImplementation(implementation_: string, overrides?: CallOverrides): Promise; admin(overrides?: CallOverrides): Promise; implementation(overrides?: CallOverrides): Promise; pendingAdmin(overrides?: CallOverrides): Promise; }; filters: { "NewAdmin(address,address)"(oldAdmin?: null, newAdmin?: null): NewAdminEventFilter; NewAdmin(oldAdmin?: null, newAdmin?: null): NewAdminEventFilter; "NewImplementation(address,address)"(oldImplementation?: null, newImplementation?: null): NewImplementationEventFilter; NewImplementation(oldImplementation?: null, newImplementation?: null): NewImplementationEventFilter; "NewPendingAdmin(address,address)"(oldPendingAdmin?: null, newPendingAdmin?: null): NewPendingAdminEventFilter; NewPendingAdmin(oldPendingAdmin?: null, newPendingAdmin?: null): NewPendingAdminEventFilter; "NewVetoer(address,address)"(oldVetoer?: null, newVetoer?: null): NewVetoerEventFilter; NewVetoer(oldVetoer?: null, newVetoer?: null): NewVetoerEventFilter; "ProposalCanceled(uint256)"(id?: null): ProposalCanceledEventFilter; ProposalCanceled(id?: null): ProposalCanceledEventFilter; "ProposalCreated(uint256,address,address[],uint256[],string[],bytes[],uint256,uint256,string)"(id?: null, proposer?: null, targets?: null, values?: null, signatures?: null, calldatas?: null, startBlock?: null, endBlock?: null, description?: null): ProposalCreatedEventFilter; ProposalCreated(id?: null, proposer?: null, targets?: null, values?: null, signatures?: null, calldatas?: null, startBlock?: null, endBlock?: null, description?: null): ProposalCreatedEventFilter; "ProposalCreatedWithRequirements(uint256,address,address[],uint256[],string[],bytes[],uint256,uint256,uint256,uint256,string)"(id?: null, proposer?: null, targets?: null, values?: null, signatures?: null, calldatas?: null, startBlock?: null, endBlock?: null, proposalThreshold?: null, quorumVotes?: null, description?: null): ProposalCreatedWithRequirementsEventFilter; ProposalCreatedWithRequirements(id?: null, proposer?: null, targets?: null, values?: null, signatures?: null, calldatas?: null, startBlock?: null, endBlock?: null, proposalThreshold?: null, quorumVotes?: null, description?: null): ProposalCreatedWithRequirementsEventFilter; "ProposalExecuted(uint256)"(id?: null): ProposalExecutedEventFilter; ProposalExecuted(id?: null): ProposalExecutedEventFilter; "ProposalQueued(uint256,uint256)"(id?: null, eta?: null): ProposalQueuedEventFilter; ProposalQueued(id?: null, eta?: null): ProposalQueuedEventFilter; "ProposalThresholdBPSSet(uint256,uint256)"(oldProposalThresholdBPS?: null, newProposalThresholdBPS?: null): ProposalThresholdBPSSetEventFilter; ProposalThresholdBPSSet(oldProposalThresholdBPS?: null, newProposalThresholdBPS?: null): ProposalThresholdBPSSetEventFilter; "ProposalVetoed(uint256)"(id?: null): ProposalVetoedEventFilter; ProposalVetoed(id?: null): ProposalVetoedEventFilter; "QuorumVotesBPSSet(uint256,uint256)"(oldQuorumVotesBPS?: null, newQuorumVotesBPS?: null): QuorumVotesBPSSetEventFilter; QuorumVotesBPSSet(oldQuorumVotesBPS?: null, newQuorumVotesBPS?: null): QuorumVotesBPSSetEventFilter; "VoteCast(address,uint256,uint8,uint256,string)"(voter?: string | null, proposalId?: null, support?: null, votes?: null, reason?: null): VoteCastEventFilter; VoteCast(voter?: string | null, proposalId?: null, support?: null, votes?: null, reason?: null): VoteCastEventFilter; "VotingDelaySet(uint256,uint256)"(oldVotingDelay?: null, newVotingDelay?: null): VotingDelaySetEventFilter; VotingDelaySet(oldVotingDelay?: null, newVotingDelay?: null): VotingDelaySetEventFilter; "VotingPeriodSet(uint256,uint256)"(oldVotingPeriod?: null, newVotingPeriod?: null): VotingPeriodSetEventFilter; VotingPeriodSet(oldVotingPeriod?: null, newVotingPeriod?: null): VotingPeriodSetEventFilter; }; estimateGas: { _setImplementation(implementation_: string, overrides?: Overrides & { from?: string | Promise; }): Promise; admin(overrides?: CallOverrides): Promise; implementation(overrides?: CallOverrides): Promise; pendingAdmin(overrides?: CallOverrides): Promise; }; populateTransaction: { _setImplementation(implementation_: string, overrides?: Overrides & { from?: string | Promise; }): Promise; admin(overrides?: CallOverrides): Promise; implementation(overrides?: CallOverrides): Promise; pendingAdmin(overrides?: CallOverrides): Promise; }; }