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 declare namespace IKeep3rJobFundableLiquidity {
    type TickCacheStruct = {
        current: PromiseOrValue<BigNumberish>;
        difference: PromiseOrValue<BigNumberish>;
        period: PromiseOrValue<BigNumberish>;
    };
    type TickCacheStructOutput = [BigNumber, BigNumber, BigNumber] & {
        current: BigNumber;
        difference: BigNumber;
        period: BigNumber;
    };
}
export interface IKeep3rJobDisputableInterface extends utils.Interface {
    functions: {
        "addLiquidityToJob(address,address,uint256)": FunctionFragment;
        "addTokenCreditsToJob(address,address,uint256)": FunctionFragment;
        "approveLiquidity(address)": FunctionFragment;
        "approvedLiquidities()": FunctionFragment;
        "forceLiquidityCreditsToJob(address,uint256)": FunctionFragment;
        "jobLiquidityCredits(address)": FunctionFragment;
        "jobPeriodCredits(address)": FunctionFragment;
        "jobTokenCreditsAddedAt(address,address)": FunctionFragment;
        "liquidityAmount(address,address)": FunctionFragment;
        "observeLiquidity(address)": FunctionFragment;
        "quoteLiquidity(address,uint256)": FunctionFragment;
        "revokeLiquidity(address)": FunctionFragment;
        "rewardedAt(address)": FunctionFragment;
        "slashLiquidityFromJob(address,address,uint256)": FunctionFragment;
        "slashTokenFromJob(address,address,uint256)": FunctionFragment;
        "totalJobCredits(address)": FunctionFragment;
        "unbondLiquidityFromJob(address,address,uint256)": FunctionFragment;
        "withdrawLiquidityFromJob(address,address,address)": FunctionFragment;
        "withdrawTokenCreditsFromJob(address,address,uint256,address)": FunctionFragment;
        "workedAt(address)": FunctionFragment;
    };
    getFunction(nameOrSignatureOrTopic: "addLiquidityToJob" | "addTokenCreditsToJob" | "approveLiquidity" | "approvedLiquidities" | "forceLiquidityCreditsToJob" | "jobLiquidityCredits" | "jobPeriodCredits" | "jobTokenCreditsAddedAt" | "liquidityAmount" | "observeLiquidity" | "quoteLiquidity" | "revokeLiquidity" | "rewardedAt" | "slashLiquidityFromJob" | "slashTokenFromJob" | "totalJobCredits" | "unbondLiquidityFromJob" | "withdrawLiquidityFromJob" | "withdrawTokenCreditsFromJob" | "workedAt"): FunctionFragment;
    encodeFunctionData(functionFragment: "addLiquidityToJob", values: [
        PromiseOrValue<string>,
        PromiseOrValue<string>,
        PromiseOrValue<BigNumberish>
    ]): string;
    encodeFunctionData(functionFragment: "addTokenCreditsToJob", values: [
        PromiseOrValue<string>,
        PromiseOrValue<string>,
        PromiseOrValue<BigNumberish>
    ]): string;
    encodeFunctionData(functionFragment: "approveLiquidity", values: [PromiseOrValue<string>]): string;
    encodeFunctionData(functionFragment: "approvedLiquidities", values?: undefined): string;
    encodeFunctionData(functionFragment: "forceLiquidityCreditsToJob", values: [PromiseOrValue<string>, PromiseOrValue<BigNumberish>]): string;
    encodeFunctionData(functionFragment: "jobLiquidityCredits", values: [PromiseOrValue<string>]): string;
    encodeFunctionData(functionFragment: "jobPeriodCredits", values: [PromiseOrValue<string>]): string;
    encodeFunctionData(functionFragment: "jobTokenCreditsAddedAt", values: [PromiseOrValue<string>, PromiseOrValue<string>]): string;
    encodeFunctionData(functionFragment: "liquidityAmount", values: [PromiseOrValue<string>, PromiseOrValue<string>]): string;
    encodeFunctionData(functionFragment: "observeLiquidity", values: [PromiseOrValue<string>]): string;
    encodeFunctionData(functionFragment: "quoteLiquidity", values: [PromiseOrValue<string>, PromiseOrValue<BigNumberish>]): string;
    encodeFunctionData(functionFragment: "revokeLiquidity", values: [PromiseOrValue<string>]): string;
    encodeFunctionData(functionFragment: "rewardedAt", values: [PromiseOrValue<string>]): string;
    encodeFunctionData(functionFragment: "slashLiquidityFromJob", values: [
        PromiseOrValue<string>,
        PromiseOrValue<string>,
        PromiseOrValue<BigNumberish>
    ]): string;
    encodeFunctionData(functionFragment: "slashTokenFromJob", values: [
        PromiseOrValue<string>,
        PromiseOrValue<string>,
        PromiseOrValue<BigNumberish>
    ]): string;
    encodeFunctionData(functionFragment: "totalJobCredits", values: [PromiseOrValue<string>]): string;
    encodeFunctionData(functionFragment: "unbondLiquidityFromJob", values: [
        PromiseOrValue<string>,
        PromiseOrValue<string>,
        PromiseOrValue<BigNumberish>
    ]): string;
    encodeFunctionData(functionFragment: "withdrawLiquidityFromJob", values: [
        PromiseOrValue<string>,
        PromiseOrValue<string>,
        PromiseOrValue<string>
    ]): string;
    encodeFunctionData(functionFragment: "withdrawTokenCreditsFromJob", values: [
        PromiseOrValue<string>,
        PromiseOrValue<string>,
        PromiseOrValue<BigNumberish>,
        PromiseOrValue<string>
    ]): string;
    encodeFunctionData(functionFragment: "workedAt", values: [PromiseOrValue<string>]): string;
    decodeFunctionResult(functionFragment: "addLiquidityToJob", data: BytesLike): Result;
    decodeFunctionResult(functionFragment: "addTokenCreditsToJob", data: BytesLike): Result;
    decodeFunctionResult(functionFragment: "approveLiquidity", data: BytesLike): Result;
    decodeFunctionResult(functionFragment: "approvedLiquidities", data: BytesLike): Result;
    decodeFunctionResult(functionFragment: "forceLiquidityCreditsToJob", data: BytesLike): Result;
    decodeFunctionResult(functionFragment: "jobLiquidityCredits", data: BytesLike): Result;
    decodeFunctionResult(functionFragment: "jobPeriodCredits", data: BytesLike): Result;
    decodeFunctionResult(functionFragment: "jobTokenCreditsAddedAt", data: BytesLike): Result;
    decodeFunctionResult(functionFragment: "liquidityAmount", data: BytesLike): Result;
    decodeFunctionResult(functionFragment: "observeLiquidity", data: BytesLike): Result;
    decodeFunctionResult(functionFragment: "quoteLiquidity", data: BytesLike): Result;
    decodeFunctionResult(functionFragment: "revokeLiquidity", data: BytesLike): Result;
    decodeFunctionResult(functionFragment: "rewardedAt", data: BytesLike): Result;
    decodeFunctionResult(functionFragment: "slashLiquidityFromJob", data: BytesLike): Result;
    decodeFunctionResult(functionFragment: "slashTokenFromJob", data: BytesLike): Result;
    decodeFunctionResult(functionFragment: "totalJobCredits", data: BytesLike): Result;
    decodeFunctionResult(functionFragment: "unbondLiquidityFromJob", data: BytesLike): Result;
    decodeFunctionResult(functionFragment: "withdrawLiquidityFromJob", data: BytesLike): Result;
    decodeFunctionResult(functionFragment: "withdrawTokenCreditsFromJob", data: BytesLike): Result;
    decodeFunctionResult(functionFragment: "workedAt", data: BytesLike): Result;
    events: {
        "JobSlashLiquidity(address,address,address,uint256)": EventFragment;
        "JobSlashToken(address,address,address,uint256)": EventFragment;
        "LiquidityAddition(address,address,address,uint256)": EventFragment;
        "LiquidityApproval(address)": EventFragment;
        "LiquidityCreditsForced(address,uint256,uint256)": EventFragment;
        "LiquidityCreditsReward(address,uint256,uint256,uint256)": EventFragment;
        "LiquidityRevocation(address)": EventFragment;
        "LiquidityWithdrawal(address,address,address,uint256)": EventFragment;
        "TokenCreditAddition(address,address,address,uint256)": EventFragment;
        "TokenCreditWithdrawal(address,address,address,uint256)": EventFragment;
    };
    getEvent(nameOrSignatureOrTopic: "JobSlashLiquidity"): EventFragment;
    getEvent(nameOrSignatureOrTopic: "JobSlashToken"): EventFragment;
    getEvent(nameOrSignatureOrTopic: "LiquidityAddition"): EventFragment;
    getEvent(nameOrSignatureOrTopic: "LiquidityApproval"): EventFragment;
    getEvent(nameOrSignatureOrTopic: "LiquidityCreditsForced"): EventFragment;
    getEvent(nameOrSignatureOrTopic: "LiquidityCreditsReward"): EventFragment;
    getEvent(nameOrSignatureOrTopic: "LiquidityRevocation"): EventFragment;
    getEvent(nameOrSignatureOrTopic: "LiquidityWithdrawal"): EventFragment;
    getEvent(nameOrSignatureOrTopic: "TokenCreditAddition"): EventFragment;
    getEvent(nameOrSignatureOrTopic: "TokenCreditWithdrawal"): EventFragment;
}
export interface JobSlashLiquidityEventObject {
    _job: string;
    _liquidity: string;
    _slasher: string;
    _amount: BigNumber;
}
export declare type JobSlashLiquidityEvent = TypedEvent<[
    string,
    string,
    string,
    BigNumber
], JobSlashLiquidityEventObject>;
export declare type JobSlashLiquidityEventFilter = TypedEventFilter<JobSlashLiquidityEvent>;
export interface JobSlashTokenEventObject {
    _job: string;
    _token: string;
    _slasher: string;
    _amount: BigNumber;
}
export declare type JobSlashTokenEvent = TypedEvent<[
    string,
    string,
    string,
    BigNumber
], JobSlashTokenEventObject>;
export declare type JobSlashTokenEventFilter = TypedEventFilter<JobSlashTokenEvent>;
export interface LiquidityAdditionEventObject {
    _job: string;
    _liquidity: string;
    _provider: string;
    _amount: BigNumber;
}
export declare type LiquidityAdditionEvent = TypedEvent<[
    string,
    string,
    string,
    BigNumber
], LiquidityAdditionEventObject>;
export declare type LiquidityAdditionEventFilter = TypedEventFilter<LiquidityAdditionEvent>;
export interface LiquidityApprovalEventObject {
    _liquidity: string;
}
export declare type LiquidityApprovalEvent = TypedEvent<[
    string
], LiquidityApprovalEventObject>;
export declare type LiquidityApprovalEventFilter = TypedEventFilter<LiquidityApprovalEvent>;
export interface LiquidityCreditsForcedEventObject {
    _job: string;
    _rewardedAt: BigNumber;
    _currentCredits: BigNumber;
}
export declare type LiquidityCreditsForcedEvent = TypedEvent<[
    string,
    BigNumber,
    BigNumber
], LiquidityCreditsForcedEventObject>;
export declare type LiquidityCreditsForcedEventFilter = TypedEventFilter<LiquidityCreditsForcedEvent>;
export interface LiquidityCreditsRewardEventObject {
    _job: string;
    _rewardedAt: BigNumber;
    _currentCredits: BigNumber;
    _periodCredits: BigNumber;
}
export declare type LiquidityCreditsRewardEvent = TypedEvent<[
    string,
    BigNumber,
    BigNumber,
    BigNumber
], LiquidityCreditsRewardEventObject>;
export declare type LiquidityCreditsRewardEventFilter = TypedEventFilter<LiquidityCreditsRewardEvent>;
export interface LiquidityRevocationEventObject {
    _liquidity: string;
}
export declare type LiquidityRevocationEvent = TypedEvent<[
    string
], LiquidityRevocationEventObject>;
export declare type LiquidityRevocationEventFilter = TypedEventFilter<LiquidityRevocationEvent>;
export interface LiquidityWithdrawalEventObject {
    _job: string;
    _liquidity: string;
    _receiver: string;
    _amount: BigNumber;
}
export declare type LiquidityWithdrawalEvent = TypedEvent<[
    string,
    string,
    string,
    BigNumber
], LiquidityWithdrawalEventObject>;
export declare type LiquidityWithdrawalEventFilter = TypedEventFilter<LiquidityWithdrawalEvent>;
export interface TokenCreditAdditionEventObject {
    _job: string;
    _token: string;
    _provider: string;
    _amount: BigNumber;
}
export declare type TokenCreditAdditionEvent = TypedEvent<[
    string,
    string,
    string,
    BigNumber
], TokenCreditAdditionEventObject>;
export declare type TokenCreditAdditionEventFilter = TypedEventFilter<TokenCreditAdditionEvent>;
export interface TokenCreditWithdrawalEventObject {
    _job: string;
    _token: string;
    _receiver: string;
    _amount: BigNumber;
}
export declare type TokenCreditWithdrawalEvent = TypedEvent<[
    string,
    string,
    string,
    BigNumber
], TokenCreditWithdrawalEventObject>;
export declare type TokenCreditWithdrawalEventFilter = TypedEventFilter<TokenCreditWithdrawalEvent>;
export interface IKeep3rJobDisputable extends BaseContract {
    connect(signerOrProvider: Signer | Provider | string): this;
    attach(addressOrName: string): this;
    deployed(): Promise<this>;
    interface: IKeep3rJobDisputableInterface;
    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: {
        addLiquidityToJob(_job: PromiseOrValue<string>, _liquidity: PromiseOrValue<string>, _amount: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<ContractTransaction>;
        addTokenCreditsToJob(_job: PromiseOrValue<string>, _token: PromiseOrValue<string>, _amount: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<ContractTransaction>;
        approveLiquidity(_liquidity: PromiseOrValue<string>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<ContractTransaction>;
        approvedLiquidities(overrides?: CallOverrides): Promise<[string[]] & {
            _list: string[];
        }>;
        forceLiquidityCreditsToJob(_job: PromiseOrValue<string>, _amount: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<ContractTransaction>;
        jobLiquidityCredits(_job: PromiseOrValue<string>, overrides?: CallOverrides): Promise<[BigNumber] & {
            _amount: BigNumber;
        }>;
        jobPeriodCredits(_job: PromiseOrValue<string>, overrides?: CallOverrides): Promise<[BigNumber] & {
            _amount: BigNumber;
        }>;
        jobTokenCreditsAddedAt(_job: PromiseOrValue<string>, _token: PromiseOrValue<string>, overrides?: CallOverrides): Promise<[BigNumber] & {
            _timestamp: BigNumber;
        }>;
        liquidityAmount(_job: PromiseOrValue<string>, _liquidity: PromiseOrValue<string>, overrides?: CallOverrides): Promise<[BigNumber] & {
            _amount: BigNumber;
        }>;
        observeLiquidity(_liquidity: PromiseOrValue<string>, overrides?: CallOverrides): Promise<[
            IKeep3rJobFundableLiquidity.TickCacheStructOutput
        ] & {
            _tickCache: IKeep3rJobFundableLiquidity.TickCacheStructOutput;
        }>;
        quoteLiquidity(_liquidity: PromiseOrValue<string>, _amount: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<[BigNumber] & {
            _periodCredits: BigNumber;
        }>;
        revokeLiquidity(_liquidity: PromiseOrValue<string>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<ContractTransaction>;
        rewardedAt(_job: PromiseOrValue<string>, overrides?: CallOverrides): Promise<[BigNumber] & {
            _timestamp: BigNumber;
        }>;
        slashLiquidityFromJob(_job: PromiseOrValue<string>, _liquidity: PromiseOrValue<string>, _amount: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<ContractTransaction>;
        slashTokenFromJob(_job: PromiseOrValue<string>, _token: PromiseOrValue<string>, _amount: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<ContractTransaction>;
        totalJobCredits(_job: PromiseOrValue<string>, overrides?: CallOverrides): Promise<[BigNumber] & {
            _amount: BigNumber;
        }>;
        unbondLiquidityFromJob(_job: PromiseOrValue<string>, _liquidity: PromiseOrValue<string>, _amount: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<ContractTransaction>;
        withdrawLiquidityFromJob(_job: PromiseOrValue<string>, _liquidity: PromiseOrValue<string>, _receiver: PromiseOrValue<string>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<ContractTransaction>;
        withdrawTokenCreditsFromJob(_job: PromiseOrValue<string>, _token: PromiseOrValue<string>, _amount: PromiseOrValue<BigNumberish>, _receiver: PromiseOrValue<string>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<ContractTransaction>;
        workedAt(_job: PromiseOrValue<string>, overrides?: CallOverrides): Promise<[BigNumber] & {
            _timestamp: BigNumber;
        }>;
    };
    addLiquidityToJob(_job: PromiseOrValue<string>, _liquidity: PromiseOrValue<string>, _amount: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
        from?: PromiseOrValue<string>;
    }): Promise<ContractTransaction>;
    addTokenCreditsToJob(_job: PromiseOrValue<string>, _token: PromiseOrValue<string>, _amount: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
        from?: PromiseOrValue<string>;
    }): Promise<ContractTransaction>;
    approveLiquidity(_liquidity: PromiseOrValue<string>, overrides?: Overrides & {
        from?: PromiseOrValue<string>;
    }): Promise<ContractTransaction>;
    approvedLiquidities(overrides?: CallOverrides): Promise<string[]>;
    forceLiquidityCreditsToJob(_job: PromiseOrValue<string>, _amount: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
        from?: PromiseOrValue<string>;
    }): Promise<ContractTransaction>;
    jobLiquidityCredits(_job: PromiseOrValue<string>, overrides?: CallOverrides): Promise<BigNumber>;
    jobPeriodCredits(_job: PromiseOrValue<string>, overrides?: CallOverrides): Promise<BigNumber>;
    jobTokenCreditsAddedAt(_job: PromiseOrValue<string>, _token: PromiseOrValue<string>, overrides?: CallOverrides): Promise<BigNumber>;
    liquidityAmount(_job: PromiseOrValue<string>, _liquidity: PromiseOrValue<string>, overrides?: CallOverrides): Promise<BigNumber>;
    observeLiquidity(_liquidity: PromiseOrValue<string>, overrides?: CallOverrides): Promise<IKeep3rJobFundableLiquidity.TickCacheStructOutput>;
    quoteLiquidity(_liquidity: PromiseOrValue<string>, _amount: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<BigNumber>;
    revokeLiquidity(_liquidity: PromiseOrValue<string>, overrides?: Overrides & {
        from?: PromiseOrValue<string>;
    }): Promise<ContractTransaction>;
    rewardedAt(_job: PromiseOrValue<string>, overrides?: CallOverrides): Promise<BigNumber>;
    slashLiquidityFromJob(_job: PromiseOrValue<string>, _liquidity: PromiseOrValue<string>, _amount: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
        from?: PromiseOrValue<string>;
    }): Promise<ContractTransaction>;
    slashTokenFromJob(_job: PromiseOrValue<string>, _token: PromiseOrValue<string>, _amount: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
        from?: PromiseOrValue<string>;
    }): Promise<ContractTransaction>;
    totalJobCredits(_job: PromiseOrValue<string>, overrides?: CallOverrides): Promise<BigNumber>;
    unbondLiquidityFromJob(_job: PromiseOrValue<string>, _liquidity: PromiseOrValue<string>, _amount: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
        from?: PromiseOrValue<string>;
    }): Promise<ContractTransaction>;
    withdrawLiquidityFromJob(_job: PromiseOrValue<string>, _liquidity: PromiseOrValue<string>, _receiver: PromiseOrValue<string>, overrides?: Overrides & {
        from?: PromiseOrValue<string>;
    }): Promise<ContractTransaction>;
    withdrawTokenCreditsFromJob(_job: PromiseOrValue<string>, _token: PromiseOrValue<string>, _amount: PromiseOrValue<BigNumberish>, _receiver: PromiseOrValue<string>, overrides?: Overrides & {
        from?: PromiseOrValue<string>;
    }): Promise<ContractTransaction>;
    workedAt(_job: PromiseOrValue<string>, overrides?: CallOverrides): Promise<BigNumber>;
    callStatic: {
        addLiquidityToJob(_job: PromiseOrValue<string>, _liquidity: PromiseOrValue<string>, _amount: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<void>;
        addTokenCreditsToJob(_job: PromiseOrValue<string>, _token: PromiseOrValue<string>, _amount: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<void>;
        approveLiquidity(_liquidity: PromiseOrValue<string>, overrides?: CallOverrides): Promise<void>;
        approvedLiquidities(overrides?: CallOverrides): Promise<string[]>;
        forceLiquidityCreditsToJob(_job: PromiseOrValue<string>, _amount: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<void>;
        jobLiquidityCredits(_job: PromiseOrValue<string>, overrides?: CallOverrides): Promise<BigNumber>;
        jobPeriodCredits(_job: PromiseOrValue<string>, overrides?: CallOverrides): Promise<BigNumber>;
        jobTokenCreditsAddedAt(_job: PromiseOrValue<string>, _token: PromiseOrValue<string>, overrides?: CallOverrides): Promise<BigNumber>;
        liquidityAmount(_job: PromiseOrValue<string>, _liquidity: PromiseOrValue<string>, overrides?: CallOverrides): Promise<BigNumber>;
        observeLiquidity(_liquidity: PromiseOrValue<string>, overrides?: CallOverrides): Promise<IKeep3rJobFundableLiquidity.TickCacheStructOutput>;
        quoteLiquidity(_liquidity: PromiseOrValue<string>, _amount: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<BigNumber>;
        revokeLiquidity(_liquidity: PromiseOrValue<string>, overrides?: CallOverrides): Promise<void>;
        rewardedAt(_job: PromiseOrValue<string>, overrides?: CallOverrides): Promise<BigNumber>;
        slashLiquidityFromJob(_job: PromiseOrValue<string>, _liquidity: PromiseOrValue<string>, _amount: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<void>;
        slashTokenFromJob(_job: PromiseOrValue<string>, _token: PromiseOrValue<string>, _amount: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<void>;
        totalJobCredits(_job: PromiseOrValue<string>, overrides?: CallOverrides): Promise<BigNumber>;
        unbondLiquidityFromJob(_job: PromiseOrValue<string>, _liquidity: PromiseOrValue<string>, _amount: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<void>;
        withdrawLiquidityFromJob(_job: PromiseOrValue<string>, _liquidity: PromiseOrValue<string>, _receiver: PromiseOrValue<string>, overrides?: CallOverrides): Promise<void>;
        withdrawTokenCreditsFromJob(_job: PromiseOrValue<string>, _token: PromiseOrValue<string>, _amount: PromiseOrValue<BigNumberish>, _receiver: PromiseOrValue<string>, overrides?: CallOverrides): Promise<void>;
        workedAt(_job: PromiseOrValue<string>, overrides?: CallOverrides): Promise<BigNumber>;
    };
    filters: {
        "JobSlashLiquidity(address,address,address,uint256)"(_job?: PromiseOrValue<string> | null, _liquidity?: null, _slasher?: PromiseOrValue<string> | null, _amount?: null): JobSlashLiquidityEventFilter;
        JobSlashLiquidity(_job?: PromiseOrValue<string> | null, _liquidity?: null, _slasher?: PromiseOrValue<string> | null, _amount?: null): JobSlashLiquidityEventFilter;
        "JobSlashToken(address,address,address,uint256)"(_job?: PromiseOrValue<string> | null, _token?: null, _slasher?: PromiseOrValue<string> | null, _amount?: null): JobSlashTokenEventFilter;
        JobSlashToken(_job?: PromiseOrValue<string> | null, _token?: null, _slasher?: PromiseOrValue<string> | null, _amount?: null): JobSlashTokenEventFilter;
        "LiquidityAddition(address,address,address,uint256)"(_job?: PromiseOrValue<string> | null, _liquidity?: PromiseOrValue<string> | null, _provider?: PromiseOrValue<string> | null, _amount?: null): LiquidityAdditionEventFilter;
        LiquidityAddition(_job?: PromiseOrValue<string> | null, _liquidity?: PromiseOrValue<string> | null, _provider?: PromiseOrValue<string> | null, _amount?: null): LiquidityAdditionEventFilter;
        "LiquidityApproval(address)"(_liquidity?: null): LiquidityApprovalEventFilter;
        LiquidityApproval(_liquidity?: null): LiquidityApprovalEventFilter;
        "LiquidityCreditsForced(address,uint256,uint256)"(_job?: PromiseOrValue<string> | null, _rewardedAt?: null, _currentCredits?: null): LiquidityCreditsForcedEventFilter;
        LiquidityCreditsForced(_job?: PromiseOrValue<string> | null, _rewardedAt?: null, _currentCredits?: null): LiquidityCreditsForcedEventFilter;
        "LiquidityCreditsReward(address,uint256,uint256,uint256)"(_job?: PromiseOrValue<string> | null, _rewardedAt?: null, _currentCredits?: null, _periodCredits?: null): LiquidityCreditsRewardEventFilter;
        LiquidityCreditsReward(_job?: PromiseOrValue<string> | null, _rewardedAt?: null, _currentCredits?: null, _periodCredits?: null): LiquidityCreditsRewardEventFilter;
        "LiquidityRevocation(address)"(_liquidity?: null): LiquidityRevocationEventFilter;
        LiquidityRevocation(_liquidity?: null): LiquidityRevocationEventFilter;
        "LiquidityWithdrawal(address,address,address,uint256)"(_job?: PromiseOrValue<string> | null, _liquidity?: PromiseOrValue<string> | null, _receiver?: PromiseOrValue<string> | null, _amount?: null): LiquidityWithdrawalEventFilter;
        LiquidityWithdrawal(_job?: PromiseOrValue<string> | null, _liquidity?: PromiseOrValue<string> | null, _receiver?: PromiseOrValue<string> | null, _amount?: null): LiquidityWithdrawalEventFilter;
        "TokenCreditAddition(address,address,address,uint256)"(_job?: PromiseOrValue<string> | null, _token?: PromiseOrValue<string> | null, _provider?: PromiseOrValue<string> | null, _amount?: null): TokenCreditAdditionEventFilter;
        TokenCreditAddition(_job?: PromiseOrValue<string> | null, _token?: PromiseOrValue<string> | null, _provider?: PromiseOrValue<string> | null, _amount?: null): TokenCreditAdditionEventFilter;
        "TokenCreditWithdrawal(address,address,address,uint256)"(_job?: PromiseOrValue<string> | null, _token?: PromiseOrValue<string> | null, _receiver?: PromiseOrValue<string> | null, _amount?: null): TokenCreditWithdrawalEventFilter;
        TokenCreditWithdrawal(_job?: PromiseOrValue<string> | null, _token?: PromiseOrValue<string> | null, _receiver?: PromiseOrValue<string> | null, _amount?: null): TokenCreditWithdrawalEventFilter;
    };
    estimateGas: {
        addLiquidityToJob(_job: PromiseOrValue<string>, _liquidity: PromiseOrValue<string>, _amount: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<BigNumber>;
        addTokenCreditsToJob(_job: PromiseOrValue<string>, _token: PromiseOrValue<string>, _amount: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<BigNumber>;
        approveLiquidity(_liquidity: PromiseOrValue<string>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<BigNumber>;
        approvedLiquidities(overrides?: CallOverrides): Promise<BigNumber>;
        forceLiquidityCreditsToJob(_job: PromiseOrValue<string>, _amount: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<BigNumber>;
        jobLiquidityCredits(_job: PromiseOrValue<string>, overrides?: CallOverrides): Promise<BigNumber>;
        jobPeriodCredits(_job: PromiseOrValue<string>, overrides?: CallOverrides): Promise<BigNumber>;
        jobTokenCreditsAddedAt(_job: PromiseOrValue<string>, _token: PromiseOrValue<string>, overrides?: CallOverrides): Promise<BigNumber>;
        liquidityAmount(_job: PromiseOrValue<string>, _liquidity: PromiseOrValue<string>, overrides?: CallOverrides): Promise<BigNumber>;
        observeLiquidity(_liquidity: PromiseOrValue<string>, overrides?: CallOverrides): Promise<BigNumber>;
        quoteLiquidity(_liquidity: PromiseOrValue<string>, _amount: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<BigNumber>;
        revokeLiquidity(_liquidity: PromiseOrValue<string>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<BigNumber>;
        rewardedAt(_job: PromiseOrValue<string>, overrides?: CallOverrides): Promise<BigNumber>;
        slashLiquidityFromJob(_job: PromiseOrValue<string>, _liquidity: PromiseOrValue<string>, _amount: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<BigNumber>;
        slashTokenFromJob(_job: PromiseOrValue<string>, _token: PromiseOrValue<string>, _amount: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<BigNumber>;
        totalJobCredits(_job: PromiseOrValue<string>, overrides?: CallOverrides): Promise<BigNumber>;
        unbondLiquidityFromJob(_job: PromiseOrValue<string>, _liquidity: PromiseOrValue<string>, _amount: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<BigNumber>;
        withdrawLiquidityFromJob(_job: PromiseOrValue<string>, _liquidity: PromiseOrValue<string>, _receiver: PromiseOrValue<string>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<BigNumber>;
        withdrawTokenCreditsFromJob(_job: PromiseOrValue<string>, _token: PromiseOrValue<string>, _amount: PromiseOrValue<BigNumberish>, _receiver: PromiseOrValue<string>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<BigNumber>;
        workedAt(_job: PromiseOrValue<string>, overrides?: CallOverrides): Promise<BigNumber>;
    };
    populateTransaction: {
        addLiquidityToJob(_job: PromiseOrValue<string>, _liquidity: PromiseOrValue<string>, _amount: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<PopulatedTransaction>;
        addTokenCreditsToJob(_job: PromiseOrValue<string>, _token: PromiseOrValue<string>, _amount: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<PopulatedTransaction>;
        approveLiquidity(_liquidity: PromiseOrValue<string>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<PopulatedTransaction>;
        approvedLiquidities(overrides?: CallOverrides): Promise<PopulatedTransaction>;
        forceLiquidityCreditsToJob(_job: PromiseOrValue<string>, _amount: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<PopulatedTransaction>;
        jobLiquidityCredits(_job: PromiseOrValue<string>, overrides?: CallOverrides): Promise<PopulatedTransaction>;
        jobPeriodCredits(_job: PromiseOrValue<string>, overrides?: CallOverrides): Promise<PopulatedTransaction>;
        jobTokenCreditsAddedAt(_job: PromiseOrValue<string>, _token: PromiseOrValue<string>, overrides?: CallOverrides): Promise<PopulatedTransaction>;
        liquidityAmount(_job: PromiseOrValue<string>, _liquidity: PromiseOrValue<string>, overrides?: CallOverrides): Promise<PopulatedTransaction>;
        observeLiquidity(_liquidity: PromiseOrValue<string>, overrides?: CallOverrides): Promise<PopulatedTransaction>;
        quoteLiquidity(_liquidity: PromiseOrValue<string>, _amount: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<PopulatedTransaction>;
        revokeLiquidity(_liquidity: PromiseOrValue<string>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<PopulatedTransaction>;
        rewardedAt(_job: PromiseOrValue<string>, overrides?: CallOverrides): Promise<PopulatedTransaction>;
        slashLiquidityFromJob(_job: PromiseOrValue<string>, _liquidity: PromiseOrValue<string>, _amount: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<PopulatedTransaction>;
        slashTokenFromJob(_job: PromiseOrValue<string>, _token: PromiseOrValue<string>, _amount: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<PopulatedTransaction>;
        totalJobCredits(_job: PromiseOrValue<string>, overrides?: CallOverrides): Promise<PopulatedTransaction>;
        unbondLiquidityFromJob(_job: PromiseOrValue<string>, _liquidity: PromiseOrValue<string>, _amount: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<PopulatedTransaction>;
        withdrawLiquidityFromJob(_job: PromiseOrValue<string>, _liquidity: PromiseOrValue<string>, _receiver: PromiseOrValue<string>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<PopulatedTransaction>;
        withdrawTokenCreditsFromJob(_job: PromiseOrValue<string>, _token: PromiseOrValue<string>, _amount: PromiseOrValue<BigNumberish>, _receiver: PromiseOrValue<string>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<PopulatedTransaction>;
        workedAt(_job: PromiseOrValue<string>, overrides?: CallOverrides): Promise<PopulatedTransaction>;
    };
}
//# sourceMappingURL=IKeep3rJobDisputable.d.ts.map