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, PromiseOrValue } from "../../common";
export interface DssVestSuckableInterface extends utils.Interface {
    functions: {
        "TWENTY_YEARS()": FunctionFragment;
        "accrued(uint256)": FunctionFragment;
        "awards(uint256)": FunctionFragment;
        "bgn(uint256)": FunctionFragment;
        "cap()": FunctionFragment;
        "chainlog()": FunctionFragment;
        "clf(uint256)": FunctionFragment;
        "create(address,uint256,uint256,uint256,uint256,address)": FunctionFragment;
        "daiJoin()": FunctionFragment;
        "deny(address)": FunctionFragment;
        "file(bytes32,uint256)": FunctionFragment;
        "fin(uint256)": FunctionFragment;
        "ids()": FunctionFragment;
        "isTrustedForwarder(address)": FunctionFragment;
        "mgr(uint256)": FunctionFragment;
        "move(uint256,address)": FunctionFragment;
        "rely(address)": FunctionFragment;
        "res(uint256)": FunctionFragment;
        "restrict(uint256)": FunctionFragment;
        "rxd(uint256)": FunctionFragment;
        "tot(uint256)": FunctionFragment;
        "unpaid(uint256)": FunctionFragment;
        "unrestrict(uint256)": FunctionFragment;
        "usr(uint256)": FunctionFragment;
        "valid(uint256)": FunctionFragment;
        "vat()": FunctionFragment;
        "vest(uint256)": FunctionFragment;
        "vest(uint256,uint256)": FunctionFragment;
        "wards(address)": FunctionFragment;
        "yank(uint256)": FunctionFragment;
        "yank(uint256,uint256)": FunctionFragment;
    };
    getFunction(nameOrSignatureOrTopic: "TWENTY_YEARS" | "accrued" | "awards" | "bgn" | "cap" | "chainlog" | "clf" | "create" | "daiJoin" | "deny" | "file" | "fin" | "ids" | "isTrustedForwarder" | "mgr" | "move" | "rely" | "res" | "restrict" | "rxd" | "tot" | "unpaid" | "unrestrict" | "usr" | "valid" | "vat" | "vest(uint256)" | "vest(uint256,uint256)" | "wards" | "yank(uint256)" | "yank(uint256,uint256)"): FunctionFragment;
    encodeFunctionData(functionFragment: "TWENTY_YEARS", values?: undefined): string;
    encodeFunctionData(functionFragment: "accrued", values: [PromiseOrValue<BigNumberish>]): string;
    encodeFunctionData(functionFragment: "awards", values: [PromiseOrValue<BigNumberish>]): string;
    encodeFunctionData(functionFragment: "bgn", values: [PromiseOrValue<BigNumberish>]): string;
    encodeFunctionData(functionFragment: "cap", values?: undefined): string;
    encodeFunctionData(functionFragment: "chainlog", values?: undefined): string;
    encodeFunctionData(functionFragment: "clf", values: [PromiseOrValue<BigNumberish>]): string;
    encodeFunctionData(functionFragment: "create", values: [
        PromiseOrValue<string>,
        PromiseOrValue<BigNumberish>,
        PromiseOrValue<BigNumberish>,
        PromiseOrValue<BigNumberish>,
        PromiseOrValue<BigNumberish>,
        PromiseOrValue<string>
    ]): string;
    encodeFunctionData(functionFragment: "daiJoin", values?: undefined): string;
    encodeFunctionData(functionFragment: "deny", values: [PromiseOrValue<string>]): string;
    encodeFunctionData(functionFragment: "file", values: [PromiseOrValue<BytesLike>, PromiseOrValue<BigNumberish>]): string;
    encodeFunctionData(functionFragment: "fin", values: [PromiseOrValue<BigNumberish>]): string;
    encodeFunctionData(functionFragment: "ids", values?: undefined): string;
    encodeFunctionData(functionFragment: "isTrustedForwarder", values: [PromiseOrValue<string>]): string;
    encodeFunctionData(functionFragment: "mgr", values: [PromiseOrValue<BigNumberish>]): string;
    encodeFunctionData(functionFragment: "move", values: [PromiseOrValue<BigNumberish>, PromiseOrValue<string>]): string;
    encodeFunctionData(functionFragment: "rely", values: [PromiseOrValue<string>]): string;
    encodeFunctionData(functionFragment: "res", values: [PromiseOrValue<BigNumberish>]): string;
    encodeFunctionData(functionFragment: "restrict", values: [PromiseOrValue<BigNumberish>]): string;
    encodeFunctionData(functionFragment: "rxd", values: [PromiseOrValue<BigNumberish>]): string;
    encodeFunctionData(functionFragment: "tot", values: [PromiseOrValue<BigNumberish>]): string;
    encodeFunctionData(functionFragment: "unpaid", values: [PromiseOrValue<BigNumberish>]): string;
    encodeFunctionData(functionFragment: "unrestrict", values: [PromiseOrValue<BigNumberish>]): string;
    encodeFunctionData(functionFragment: "usr", values: [PromiseOrValue<BigNumberish>]): string;
    encodeFunctionData(functionFragment: "valid", values: [PromiseOrValue<BigNumberish>]): string;
    encodeFunctionData(functionFragment: "vat", values?: undefined): string;
    encodeFunctionData(functionFragment: "vest(uint256)", values: [PromiseOrValue<BigNumberish>]): string;
    encodeFunctionData(functionFragment: "vest(uint256,uint256)", values: [PromiseOrValue<BigNumberish>, PromiseOrValue<BigNumberish>]): string;
    encodeFunctionData(functionFragment: "wards", values: [PromiseOrValue<string>]): string;
    encodeFunctionData(functionFragment: "yank(uint256)", values: [PromiseOrValue<BigNumberish>]): string;
    encodeFunctionData(functionFragment: "yank(uint256,uint256)", values: [PromiseOrValue<BigNumberish>, PromiseOrValue<BigNumberish>]): string;
    decodeFunctionResult(functionFragment: "TWENTY_YEARS", data: BytesLike): Result;
    decodeFunctionResult(functionFragment: "accrued", data: BytesLike): Result;
    decodeFunctionResult(functionFragment: "awards", data: BytesLike): Result;
    decodeFunctionResult(functionFragment: "bgn", data: BytesLike): Result;
    decodeFunctionResult(functionFragment: "cap", data: BytesLike): Result;
    decodeFunctionResult(functionFragment: "chainlog", data: BytesLike): Result;
    decodeFunctionResult(functionFragment: "clf", data: BytesLike): Result;
    decodeFunctionResult(functionFragment: "create", data: BytesLike): Result;
    decodeFunctionResult(functionFragment: "daiJoin", data: BytesLike): Result;
    decodeFunctionResult(functionFragment: "deny", data: BytesLike): Result;
    decodeFunctionResult(functionFragment: "file", data: BytesLike): Result;
    decodeFunctionResult(functionFragment: "fin", data: BytesLike): Result;
    decodeFunctionResult(functionFragment: "ids", data: BytesLike): Result;
    decodeFunctionResult(functionFragment: "isTrustedForwarder", data: BytesLike): Result;
    decodeFunctionResult(functionFragment: "mgr", data: BytesLike): Result;
    decodeFunctionResult(functionFragment: "move", data: BytesLike): Result;
    decodeFunctionResult(functionFragment: "rely", data: BytesLike): Result;
    decodeFunctionResult(functionFragment: "res", data: BytesLike): Result;
    decodeFunctionResult(functionFragment: "restrict", data: BytesLike): Result;
    decodeFunctionResult(functionFragment: "rxd", data: BytesLike): Result;
    decodeFunctionResult(functionFragment: "tot", data: BytesLike): Result;
    decodeFunctionResult(functionFragment: "unpaid", data: BytesLike): Result;
    decodeFunctionResult(functionFragment: "unrestrict", data: BytesLike): Result;
    decodeFunctionResult(functionFragment: "usr", data: BytesLike): Result;
    decodeFunctionResult(functionFragment: "valid", data: BytesLike): Result;
    decodeFunctionResult(functionFragment: "vat", data: BytesLike): Result;
    decodeFunctionResult(functionFragment: "vest(uint256)", data: BytesLike): Result;
    decodeFunctionResult(functionFragment: "vest(uint256,uint256)", data: BytesLike): Result;
    decodeFunctionResult(functionFragment: "wards", data: BytesLike): Result;
    decodeFunctionResult(functionFragment: "yank(uint256)", data: BytesLike): Result;
    decodeFunctionResult(functionFragment: "yank(uint256,uint256)", data: BytesLike): Result;
    events: {
        "Deny(address)": EventFragment;
        "File(bytes32,uint256)": EventFragment;
        "Init(uint256,address)": EventFragment;
        "Move(uint256,address)": EventFragment;
        "Rely(address)": EventFragment;
        "Restrict(uint256)": EventFragment;
        "Unrestrict(uint256)": EventFragment;
        "Vest(uint256,uint256)": EventFragment;
        "Yank(uint256,uint256)": EventFragment;
    };
    getEvent(nameOrSignatureOrTopic: "Deny"): EventFragment;
    getEvent(nameOrSignatureOrTopic: "File"): EventFragment;
    getEvent(nameOrSignatureOrTopic: "Init"): EventFragment;
    getEvent(nameOrSignatureOrTopic: "Move"): EventFragment;
    getEvent(nameOrSignatureOrTopic: "Rely"): EventFragment;
    getEvent(nameOrSignatureOrTopic: "Restrict"): EventFragment;
    getEvent(nameOrSignatureOrTopic: "Unrestrict"): EventFragment;
    getEvent(nameOrSignatureOrTopic: "Vest"): EventFragment;
    getEvent(nameOrSignatureOrTopic: "Yank"): EventFragment;
}
export interface DenyEventObject {
    usr: string;
}
export type DenyEvent = TypedEvent<[string], DenyEventObject>;
export type DenyEventFilter = TypedEventFilter<DenyEvent>;
export interface FileEventObject {
    what: string;
    data: BigNumber;
}
export type FileEvent = TypedEvent<[string, BigNumber], FileEventObject>;
export type FileEventFilter = TypedEventFilter<FileEvent>;
export interface InitEventObject {
    id: BigNumber;
    usr: string;
}
export type InitEvent = TypedEvent<[BigNumber, string], InitEventObject>;
export type InitEventFilter = TypedEventFilter<InitEvent>;
export interface MoveEventObject {
    id: BigNumber;
    dst: string;
}
export type MoveEvent = TypedEvent<[BigNumber, string], MoveEventObject>;
export type MoveEventFilter = TypedEventFilter<MoveEvent>;
export interface RelyEventObject {
    usr: string;
}
export type RelyEvent = TypedEvent<[string], RelyEventObject>;
export type RelyEventFilter = TypedEventFilter<RelyEvent>;
export interface RestrictEventObject {
    id: BigNumber;
}
export type RestrictEvent = TypedEvent<[BigNumber], RestrictEventObject>;
export type RestrictEventFilter = TypedEventFilter<RestrictEvent>;
export interface UnrestrictEventObject {
    id: BigNumber;
}
export type UnrestrictEvent = TypedEvent<[BigNumber], UnrestrictEventObject>;
export type UnrestrictEventFilter = TypedEventFilter<UnrestrictEvent>;
export interface VestEventObject {
    id: BigNumber;
    amt: BigNumber;
}
export type VestEvent = TypedEvent<[BigNumber, BigNumber], VestEventObject>;
export type VestEventFilter = TypedEventFilter<VestEvent>;
export interface YankEventObject {
    id: BigNumber;
    end: BigNumber;
}
export type YankEvent = TypedEvent<[BigNumber, BigNumber], YankEventObject>;
export type YankEventFilter = TypedEventFilter<YankEvent>;
export interface DssVestSuckable extends BaseContract {
    connect(signerOrProvider: Signer | Provider | string): this;
    attach(addressOrName: string): this;
    deployed(): Promise<this>;
    interface: DssVestSuckableInterface;
    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: {
        TWENTY_YEARS(overrides?: CallOverrides): Promise<[BigNumber]>;
        accrued(_id: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<[BigNumber] & {
            amt: BigNumber;
        }>;
        awards(arg0: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<[
            string,
            number,
            number,
            number,
            string,
            number,
            BigNumber,
            BigNumber
        ] & {
            usr: string;
            bgn: number;
            clf: number;
            fin: number;
            mgr: string;
            res: number;
            tot: BigNumber;
            rxd: BigNumber;
        }>;
        bgn(_id: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<[BigNumber]>;
        cap(overrides?: CallOverrides): Promise<[BigNumber]>;
        chainlog(overrides?: CallOverrides): Promise<[string]>;
        clf(_id: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<[BigNumber]>;
        create(_usr: PromiseOrValue<string>, _tot: PromiseOrValue<BigNumberish>, _bgn: PromiseOrValue<BigNumberish>, _tau: PromiseOrValue<BigNumberish>, _eta: PromiseOrValue<BigNumberish>, _mgr: PromiseOrValue<string>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<ContractTransaction>;
        daiJoin(overrides?: CallOverrides): Promise<[string]>;
        deny(_usr: PromiseOrValue<string>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<ContractTransaction>;
        file(what: PromiseOrValue<BytesLike>, data: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<ContractTransaction>;
        fin(_id: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<[BigNumber]>;
        ids(overrides?: CallOverrides): Promise<[BigNumber]>;
        isTrustedForwarder(forwarder: PromiseOrValue<string>, overrides?: CallOverrides): Promise<[boolean]>;
        mgr(_id: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<[string]>;
        move(_id: PromiseOrValue<BigNumberish>, _dst: PromiseOrValue<string>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<ContractTransaction>;
        rely(_usr: PromiseOrValue<string>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<ContractTransaction>;
        res(_id: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<[BigNumber]>;
        restrict(_id: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<ContractTransaction>;
        rxd(_id: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<[BigNumber]>;
        tot(_id: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<[BigNumber]>;
        unpaid(_id: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<[BigNumber] & {
            amt: BigNumber;
        }>;
        unrestrict(_id: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<ContractTransaction>;
        usr(_id: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<[string]>;
        valid(_id: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<[boolean] & {
            isValid: boolean;
        }>;
        vat(overrides?: CallOverrides): Promise<[string]>;
        "vest(uint256)"(_id: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<ContractTransaction>;
        "vest(uint256,uint256)"(_id: PromiseOrValue<BigNumberish>, _maxAmt: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<ContractTransaction>;
        wards(arg0: PromiseOrValue<string>, overrides?: CallOverrides): Promise<[BigNumber]>;
        "yank(uint256)"(_id: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<ContractTransaction>;
        "yank(uint256,uint256)"(_id: PromiseOrValue<BigNumberish>, _end: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<ContractTransaction>;
    };
    TWENTY_YEARS(overrides?: CallOverrides): Promise<BigNumber>;
    accrued(_id: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<BigNumber>;
    awards(arg0: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<[
        string,
        number,
        number,
        number,
        string,
        number,
        BigNumber,
        BigNumber
    ] & {
        usr: string;
        bgn: number;
        clf: number;
        fin: number;
        mgr: string;
        res: number;
        tot: BigNumber;
        rxd: BigNumber;
    }>;
    bgn(_id: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<BigNumber>;
    cap(overrides?: CallOverrides): Promise<BigNumber>;
    chainlog(overrides?: CallOverrides): Promise<string>;
    clf(_id: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<BigNumber>;
    create(_usr: PromiseOrValue<string>, _tot: PromiseOrValue<BigNumberish>, _bgn: PromiseOrValue<BigNumberish>, _tau: PromiseOrValue<BigNumberish>, _eta: PromiseOrValue<BigNumberish>, _mgr: PromiseOrValue<string>, overrides?: Overrides & {
        from?: PromiseOrValue<string>;
    }): Promise<ContractTransaction>;
    daiJoin(overrides?: CallOverrides): Promise<string>;
    deny(_usr: PromiseOrValue<string>, overrides?: Overrides & {
        from?: PromiseOrValue<string>;
    }): Promise<ContractTransaction>;
    file(what: PromiseOrValue<BytesLike>, data: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
        from?: PromiseOrValue<string>;
    }): Promise<ContractTransaction>;
    fin(_id: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<BigNumber>;
    ids(overrides?: CallOverrides): Promise<BigNumber>;
    isTrustedForwarder(forwarder: PromiseOrValue<string>, overrides?: CallOverrides): Promise<boolean>;
    mgr(_id: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<string>;
    move(_id: PromiseOrValue<BigNumberish>, _dst: PromiseOrValue<string>, overrides?: Overrides & {
        from?: PromiseOrValue<string>;
    }): Promise<ContractTransaction>;
    rely(_usr: PromiseOrValue<string>, overrides?: Overrides & {
        from?: PromiseOrValue<string>;
    }): Promise<ContractTransaction>;
    res(_id: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<BigNumber>;
    restrict(_id: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
        from?: PromiseOrValue<string>;
    }): Promise<ContractTransaction>;
    rxd(_id: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<BigNumber>;
    tot(_id: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<BigNumber>;
    unpaid(_id: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<BigNumber>;
    unrestrict(_id: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
        from?: PromiseOrValue<string>;
    }): Promise<ContractTransaction>;
    usr(_id: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<string>;
    valid(_id: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<boolean>;
    vat(overrides?: CallOverrides): Promise<string>;
    "vest(uint256)"(_id: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
        from?: PromiseOrValue<string>;
    }): Promise<ContractTransaction>;
    "vest(uint256,uint256)"(_id: PromiseOrValue<BigNumberish>, _maxAmt: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
        from?: PromiseOrValue<string>;
    }): Promise<ContractTransaction>;
    wards(arg0: PromiseOrValue<string>, overrides?: CallOverrides): Promise<BigNumber>;
    "yank(uint256)"(_id: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
        from?: PromiseOrValue<string>;
    }): Promise<ContractTransaction>;
    "yank(uint256,uint256)"(_id: PromiseOrValue<BigNumberish>, _end: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
        from?: PromiseOrValue<string>;
    }): Promise<ContractTransaction>;
    callStatic: {
        TWENTY_YEARS(overrides?: CallOverrides): Promise<BigNumber>;
        accrued(_id: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<BigNumber>;
        awards(arg0: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<[
            string,
            number,
            number,
            number,
            string,
            number,
            BigNumber,
            BigNumber
        ] & {
            usr: string;
            bgn: number;
            clf: number;
            fin: number;
            mgr: string;
            res: number;
            tot: BigNumber;
            rxd: BigNumber;
        }>;
        bgn(_id: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<BigNumber>;
        cap(overrides?: CallOverrides): Promise<BigNumber>;
        chainlog(overrides?: CallOverrides): Promise<string>;
        clf(_id: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<BigNumber>;
        create(_usr: PromiseOrValue<string>, _tot: PromiseOrValue<BigNumberish>, _bgn: PromiseOrValue<BigNumberish>, _tau: PromiseOrValue<BigNumberish>, _eta: PromiseOrValue<BigNumberish>, _mgr: PromiseOrValue<string>, overrides?: CallOverrides): Promise<BigNumber>;
        daiJoin(overrides?: CallOverrides): Promise<string>;
        deny(_usr: PromiseOrValue<string>, overrides?: CallOverrides): Promise<void>;
        file(what: PromiseOrValue<BytesLike>, data: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<void>;
        fin(_id: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<BigNumber>;
        ids(overrides?: CallOverrides): Promise<BigNumber>;
        isTrustedForwarder(forwarder: PromiseOrValue<string>, overrides?: CallOverrides): Promise<boolean>;
        mgr(_id: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<string>;
        move(_id: PromiseOrValue<BigNumberish>, _dst: PromiseOrValue<string>, overrides?: CallOverrides): Promise<void>;
        rely(_usr: PromiseOrValue<string>, overrides?: CallOverrides): Promise<void>;
        res(_id: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<BigNumber>;
        restrict(_id: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<void>;
        rxd(_id: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<BigNumber>;
        tot(_id: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<BigNumber>;
        unpaid(_id: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<BigNumber>;
        unrestrict(_id: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<void>;
        usr(_id: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<string>;
        valid(_id: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<boolean>;
        vat(overrides?: CallOverrides): Promise<string>;
        "vest(uint256)"(_id: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<void>;
        "vest(uint256,uint256)"(_id: PromiseOrValue<BigNumberish>, _maxAmt: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<void>;
        wards(arg0: PromiseOrValue<string>, overrides?: CallOverrides): Promise<BigNumber>;
        "yank(uint256)"(_id: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<void>;
        "yank(uint256,uint256)"(_id: PromiseOrValue<BigNumberish>, _end: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<void>;
    };
    filters: {
        "Deny(address)"(usr?: PromiseOrValue<string> | null): DenyEventFilter;
        Deny(usr?: PromiseOrValue<string> | null): DenyEventFilter;
        "File(bytes32,uint256)"(what?: PromiseOrValue<BytesLike> | null, data?: null): FileEventFilter;
        File(what?: PromiseOrValue<BytesLike> | null, data?: null): FileEventFilter;
        "Init(uint256,address)"(id?: PromiseOrValue<BigNumberish> | null, usr?: PromiseOrValue<string> | null): InitEventFilter;
        Init(id?: PromiseOrValue<BigNumberish> | null, usr?: PromiseOrValue<string> | null): InitEventFilter;
        "Move(uint256,address)"(id?: PromiseOrValue<BigNumberish> | null, dst?: PromiseOrValue<string> | null): MoveEventFilter;
        Move(id?: PromiseOrValue<BigNumberish> | null, dst?: PromiseOrValue<string> | null): MoveEventFilter;
        "Rely(address)"(usr?: PromiseOrValue<string> | null): RelyEventFilter;
        Rely(usr?: PromiseOrValue<string> | null): RelyEventFilter;
        "Restrict(uint256)"(id?: PromiseOrValue<BigNumberish> | null): RestrictEventFilter;
        Restrict(id?: PromiseOrValue<BigNumberish> | null): RestrictEventFilter;
        "Unrestrict(uint256)"(id?: PromiseOrValue<BigNumberish> | null): UnrestrictEventFilter;
        Unrestrict(id?: PromiseOrValue<BigNumberish> | null): UnrestrictEventFilter;
        "Vest(uint256,uint256)"(id?: PromiseOrValue<BigNumberish> | null, amt?: null): VestEventFilter;
        Vest(id?: PromiseOrValue<BigNumberish> | null, amt?: null): VestEventFilter;
        "Yank(uint256,uint256)"(id?: PromiseOrValue<BigNumberish> | null, end?: null): YankEventFilter;
        Yank(id?: PromiseOrValue<BigNumberish> | null, end?: null): YankEventFilter;
    };
    estimateGas: {
        TWENTY_YEARS(overrides?: CallOverrides): Promise<BigNumber>;
        accrued(_id: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<BigNumber>;
        awards(arg0: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<BigNumber>;
        bgn(_id: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<BigNumber>;
        cap(overrides?: CallOverrides): Promise<BigNumber>;
        chainlog(overrides?: CallOverrides): Promise<BigNumber>;
        clf(_id: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<BigNumber>;
        create(_usr: PromiseOrValue<string>, _tot: PromiseOrValue<BigNumberish>, _bgn: PromiseOrValue<BigNumberish>, _tau: PromiseOrValue<BigNumberish>, _eta: PromiseOrValue<BigNumberish>, _mgr: PromiseOrValue<string>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<BigNumber>;
        daiJoin(overrides?: CallOverrides): Promise<BigNumber>;
        deny(_usr: PromiseOrValue<string>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<BigNumber>;
        file(what: PromiseOrValue<BytesLike>, data: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<BigNumber>;
        fin(_id: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<BigNumber>;
        ids(overrides?: CallOverrides): Promise<BigNumber>;
        isTrustedForwarder(forwarder: PromiseOrValue<string>, overrides?: CallOverrides): Promise<BigNumber>;
        mgr(_id: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<BigNumber>;
        move(_id: PromiseOrValue<BigNumberish>, _dst: PromiseOrValue<string>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<BigNumber>;
        rely(_usr: PromiseOrValue<string>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<BigNumber>;
        res(_id: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<BigNumber>;
        restrict(_id: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<BigNumber>;
        rxd(_id: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<BigNumber>;
        tot(_id: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<BigNumber>;
        unpaid(_id: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<BigNumber>;
        unrestrict(_id: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<BigNumber>;
        usr(_id: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<BigNumber>;
        valid(_id: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<BigNumber>;
        vat(overrides?: CallOverrides): Promise<BigNumber>;
        "vest(uint256)"(_id: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<BigNumber>;
        "vest(uint256,uint256)"(_id: PromiseOrValue<BigNumberish>, _maxAmt: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<BigNumber>;
        wards(arg0: PromiseOrValue<string>, overrides?: CallOverrides): Promise<BigNumber>;
        "yank(uint256)"(_id: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<BigNumber>;
        "yank(uint256,uint256)"(_id: PromiseOrValue<BigNumberish>, _end: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<BigNumber>;
    };
    populateTransaction: {
        TWENTY_YEARS(overrides?: CallOverrides): Promise<PopulatedTransaction>;
        accrued(_id: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<PopulatedTransaction>;
        awards(arg0: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<PopulatedTransaction>;
        bgn(_id: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<PopulatedTransaction>;
        cap(overrides?: CallOverrides): Promise<PopulatedTransaction>;
        chainlog(overrides?: CallOverrides): Promise<PopulatedTransaction>;
        clf(_id: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<PopulatedTransaction>;
        create(_usr: PromiseOrValue<string>, _tot: PromiseOrValue<BigNumberish>, _bgn: PromiseOrValue<BigNumberish>, _tau: PromiseOrValue<BigNumberish>, _eta: PromiseOrValue<BigNumberish>, _mgr: PromiseOrValue<string>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<PopulatedTransaction>;
        daiJoin(overrides?: CallOverrides): Promise<PopulatedTransaction>;
        deny(_usr: PromiseOrValue<string>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<PopulatedTransaction>;
        file(what: PromiseOrValue<BytesLike>, data: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<PopulatedTransaction>;
        fin(_id: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<PopulatedTransaction>;
        ids(overrides?: CallOverrides): Promise<PopulatedTransaction>;
        isTrustedForwarder(forwarder: PromiseOrValue<string>, overrides?: CallOverrides): Promise<PopulatedTransaction>;
        mgr(_id: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<PopulatedTransaction>;
        move(_id: PromiseOrValue<BigNumberish>, _dst: PromiseOrValue<string>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<PopulatedTransaction>;
        rely(_usr: PromiseOrValue<string>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<PopulatedTransaction>;
        res(_id: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<PopulatedTransaction>;
        restrict(_id: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<PopulatedTransaction>;
        rxd(_id: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<PopulatedTransaction>;
        tot(_id: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<PopulatedTransaction>;
        unpaid(_id: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<PopulatedTransaction>;
        unrestrict(_id: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<PopulatedTransaction>;
        usr(_id: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<PopulatedTransaction>;
        valid(_id: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<PopulatedTransaction>;
        vat(overrides?: CallOverrides): Promise<PopulatedTransaction>;
        "vest(uint256)"(_id: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<PopulatedTransaction>;
        "vest(uint256,uint256)"(_id: PromiseOrValue<BigNumberish>, _maxAmt: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<PopulatedTransaction>;
        wards(arg0: PromiseOrValue<string>, overrides?: CallOverrides): Promise<PopulatedTransaction>;
        "yank(uint256)"(_id: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<PopulatedTransaction>;
        "yank(uint256,uint256)"(_id: PromiseOrValue<BigNumberish>, _end: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<PopulatedTransaction>;
    };
}
