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 RariGovernanceTokenDistributorInterface extends utils.Interface {
    functions: {
        'DISTRIBUTION_PERIOD()': FunctionFragment;
        'FINAL_RGT_DISTRIBUTION()': FunctionFragment;
        'disabled()': FunctionFragment;
        'distributionEndBlock()': FunctionFragment;
        'distributionStartBlock()': FunctionFragment;
        'isOwner()': FunctionFragment;
        'owner()': FunctionFragment;
        'renounceOwnership()': FunctionFragment;
        'transferOwnership(address)': FunctionFragment;
        'initialize(address)': FunctionFragment;
        'initialize(uint256,address[3],address[3])': FunctionFragment;
        'setDisabled(bool)': FunctionFragment;
        'setGovernanceToken(address)': FunctionFragment;
        'setFundManager(uint8,address)': FunctionFragment;
        'setFundToken(uint8,address)': FunctionFragment;
        'getRgtDistributed(uint256)': FunctionFragment;
        'refreshDistributionSpeeds()': FunctionFragment;
        'refreshDistributionSpeeds(uint8,uint256)': FunctionFragment;
        'refreshDistributionSpeeds(uint8)': FunctionFragment;
        'getEthUsdPrice()': FunctionFragment;
        'distributeRgt(address,uint8)': FunctionFragment;
        'beforeFirstPoolTokenTransferIn(address,uint8)': FunctionFragment;
        'getUnclaimedRgt(address)': FunctionFragment;
        'getPublicRgtClaimFee(uint256)': FunctionFragment;
        'claimRgt(uint256)': FunctionFragment;
        'claimAllRgt()': FunctionFragment;
        'upgrade(address)': FunctionFragment;
    };
    getFunction(nameOrSignatureOrTopic: 'DISTRIBUTION_PERIOD' | 'FINAL_RGT_DISTRIBUTION' | 'disabled' | 'distributionEndBlock' | 'distributionStartBlock' | 'isOwner' | 'owner' | 'renounceOwnership' | 'transferOwnership' | 'initialize(address)' | 'initialize(uint256,address[3],address[3])' | 'setDisabled' | 'setGovernanceToken' | 'setFundManager' | 'setFundToken' | 'getRgtDistributed' | 'refreshDistributionSpeeds()' | 'refreshDistributionSpeeds(uint8,uint256)' | 'refreshDistributionSpeeds(uint8)' | 'getEthUsdPrice' | 'distributeRgt' | 'beforeFirstPoolTokenTransferIn' | 'getUnclaimedRgt' | 'getPublicRgtClaimFee' | 'claimRgt' | 'claimAllRgt' | 'upgrade'): FunctionFragment;
    encodeFunctionData(functionFragment: 'DISTRIBUTION_PERIOD', values?: undefined): string;
    encodeFunctionData(functionFragment: 'FINAL_RGT_DISTRIBUTION', values?: undefined): string;
    encodeFunctionData(functionFragment: 'disabled', values?: undefined): string;
    encodeFunctionData(functionFragment: 'distributionEndBlock', values?: undefined): string;
    encodeFunctionData(functionFragment: 'distributionStartBlock', values?: undefined): string;
    encodeFunctionData(functionFragment: 'isOwner', values?: undefined): string;
    encodeFunctionData(functionFragment: 'owner', values?: undefined): string;
    encodeFunctionData(functionFragment: 'renounceOwnership', values?: undefined): string;
    encodeFunctionData(functionFragment: 'transferOwnership', values: [PromiseOrValue<string>]): string;
    encodeFunctionData(functionFragment: 'initialize(address)', values: [PromiseOrValue<string>]): string;
    encodeFunctionData(functionFragment: 'initialize(uint256,address[3],address[3])', values: [
        PromiseOrValue<BigNumberish>,
        [
            PromiseOrValue<string>,
            PromiseOrValue<string>,
            PromiseOrValue<string>
        ],
        [
            PromiseOrValue<string>,
            PromiseOrValue<string>,
            PromiseOrValue<string>
        ]
    ]): string;
    encodeFunctionData(functionFragment: 'setDisabled', values: [PromiseOrValue<boolean>]): string;
    encodeFunctionData(functionFragment: 'setGovernanceToken', values: [PromiseOrValue<string>]): string;
    encodeFunctionData(functionFragment: 'setFundManager', values: [PromiseOrValue<BigNumberish>, PromiseOrValue<string>]): string;
    encodeFunctionData(functionFragment: 'setFundToken', values: [PromiseOrValue<BigNumberish>, PromiseOrValue<string>]): string;
    encodeFunctionData(functionFragment: 'getRgtDistributed', values: [PromiseOrValue<BigNumberish>]): string;
    encodeFunctionData(functionFragment: 'refreshDistributionSpeeds()', values?: undefined): string;
    encodeFunctionData(functionFragment: 'refreshDistributionSpeeds(uint8,uint256)', values: [PromiseOrValue<BigNumberish>, PromiseOrValue<BigNumberish>]): string;
    encodeFunctionData(functionFragment: 'refreshDistributionSpeeds(uint8)', values: [PromiseOrValue<BigNumberish>]): string;
    encodeFunctionData(functionFragment: 'getEthUsdPrice', values?: undefined): string;
    encodeFunctionData(functionFragment: 'distributeRgt', values: [PromiseOrValue<string>, PromiseOrValue<BigNumberish>]): string;
    encodeFunctionData(functionFragment: 'beforeFirstPoolTokenTransferIn', values: [PromiseOrValue<string>, PromiseOrValue<BigNumberish>]): string;
    encodeFunctionData(functionFragment: 'getUnclaimedRgt', values: [PromiseOrValue<string>]): string;
    encodeFunctionData(functionFragment: 'getPublicRgtClaimFee', values: [PromiseOrValue<BigNumberish>]): string;
    encodeFunctionData(functionFragment: 'claimRgt', values: [PromiseOrValue<BigNumberish>]): string;
    encodeFunctionData(functionFragment: 'claimAllRgt', values?: undefined): string;
    encodeFunctionData(functionFragment: 'upgrade', values: [PromiseOrValue<string>]): string;
    decodeFunctionResult(functionFragment: 'DISTRIBUTION_PERIOD', data: BytesLike): Result;
    decodeFunctionResult(functionFragment: 'FINAL_RGT_DISTRIBUTION', data: BytesLike): Result;
    decodeFunctionResult(functionFragment: 'disabled', data: BytesLike): Result;
    decodeFunctionResult(functionFragment: 'distributionEndBlock', data: BytesLike): Result;
    decodeFunctionResult(functionFragment: 'distributionStartBlock', data: BytesLike): Result;
    decodeFunctionResult(functionFragment: 'isOwner', data: BytesLike): Result;
    decodeFunctionResult(functionFragment: 'owner', data: BytesLike): Result;
    decodeFunctionResult(functionFragment: 'renounceOwnership', data: BytesLike): Result;
    decodeFunctionResult(functionFragment: 'transferOwnership', data: BytesLike): Result;
    decodeFunctionResult(functionFragment: 'initialize(address)', data: BytesLike): Result;
    decodeFunctionResult(functionFragment: 'initialize(uint256,address[3],address[3])', data: BytesLike): Result;
    decodeFunctionResult(functionFragment: 'setDisabled', data: BytesLike): Result;
    decodeFunctionResult(functionFragment: 'setGovernanceToken', data: BytesLike): Result;
    decodeFunctionResult(functionFragment: 'setFundManager', data: BytesLike): Result;
    decodeFunctionResult(functionFragment: 'setFundToken', data: BytesLike): Result;
    decodeFunctionResult(functionFragment: 'getRgtDistributed', data: BytesLike): Result;
    decodeFunctionResult(functionFragment: 'refreshDistributionSpeeds()', data: BytesLike): Result;
    decodeFunctionResult(functionFragment: 'refreshDistributionSpeeds(uint8,uint256)', data: BytesLike): Result;
    decodeFunctionResult(functionFragment: 'refreshDistributionSpeeds(uint8)', data: BytesLike): Result;
    decodeFunctionResult(functionFragment: 'getEthUsdPrice', data: BytesLike): Result;
    decodeFunctionResult(functionFragment: 'distributeRgt', data: BytesLike): Result;
    decodeFunctionResult(functionFragment: 'beforeFirstPoolTokenTransferIn', data: BytesLike): Result;
    decodeFunctionResult(functionFragment: 'getUnclaimedRgt', data: BytesLike): Result;
    decodeFunctionResult(functionFragment: 'getPublicRgtClaimFee', data: BytesLike): Result;
    decodeFunctionResult(functionFragment: 'claimRgt', data: BytesLike): Result;
    decodeFunctionResult(functionFragment: 'claimAllRgt', data: BytesLike): Result;
    decodeFunctionResult(functionFragment: 'upgrade', data: BytesLike): Result;
    events: {
        'Claim(address,uint256,uint256,uint256)': EventFragment;
        'Disabled()': EventFragment;
        'Enabled()': EventFragment;
        'OwnershipTransferred(address,address)': EventFragment;
    };
    getEvent(nameOrSignatureOrTopic: 'Claim'): EventFragment;
    getEvent(nameOrSignatureOrTopic: 'Disabled'): EventFragment;
    getEvent(nameOrSignatureOrTopic: 'Enabled'): EventFragment;
    getEvent(nameOrSignatureOrTopic: 'OwnershipTransferred'): EventFragment;
}
export interface ClaimEventObject {
    holder: string;
    claimed: BigNumber;
    transferred: BigNumber;
    burned: BigNumber;
}
export declare type ClaimEvent = TypedEvent<[string, BigNumber, BigNumber, BigNumber], ClaimEventObject>;
export declare type ClaimEventFilter = TypedEventFilter<ClaimEvent>;
export interface DisabledEventObject {
}
export declare type DisabledEvent = TypedEvent<[], DisabledEventObject>;
export declare type DisabledEventFilter = TypedEventFilter<DisabledEvent>;
export interface EnabledEventObject {
}
export declare type EnabledEvent = TypedEvent<[], EnabledEventObject>;
export declare type EnabledEventFilter = TypedEventFilter<EnabledEvent>;
export interface OwnershipTransferredEventObject {
    previousOwner: string;
    newOwner: string;
}
export declare type OwnershipTransferredEvent = TypedEvent<[string, string], OwnershipTransferredEventObject>;
export declare type OwnershipTransferredEventFilter = TypedEventFilter<OwnershipTransferredEvent>;
export interface RariGovernanceTokenDistributor extends BaseContract {
    connect(signerOrProvider: Signer | Provider | string): this;
    attach(addressOrName: string): this;
    deployed(): Promise<this>;
    interface: RariGovernanceTokenDistributorInterface;
    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: {
        DISTRIBUTION_PERIOD(overrides?: CallOverrides): Promise<[BigNumber]>;
        FINAL_RGT_DISTRIBUTION(overrides?: CallOverrides): Promise<[BigNumber]>;
        disabled(overrides?: CallOverrides): Promise<[boolean]>;
        distributionEndBlock(overrides?: CallOverrides): Promise<[BigNumber]>;
        distributionStartBlock(overrides?: CallOverrides): Promise<[BigNumber]>;
        isOwner(overrides?: CallOverrides): Promise<[boolean]>;
        owner(overrides?: CallOverrides): Promise<[string]>;
        renounceOwnership(overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<ContractTransaction>;
        transferOwnership(newOwner: PromiseOrValue<string>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<ContractTransaction>;
        'initialize(address)'(sender: PromiseOrValue<string>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<ContractTransaction>;
        'initialize(uint256,address[3],address[3])'(startBlock: PromiseOrValue<BigNumberish>, fundManagers: [PromiseOrValue<string>, PromiseOrValue<string>, PromiseOrValue<string>], fundTokens: [PromiseOrValue<string>, PromiseOrValue<string>, PromiseOrValue<string>], overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<ContractTransaction>;
        setDisabled(_disabled: PromiseOrValue<boolean>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<ContractTransaction>;
        setGovernanceToken(governanceToken: PromiseOrValue<string>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<ContractTransaction>;
        setFundManager(pool: PromiseOrValue<BigNumberish>, fundManager: PromiseOrValue<string>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<ContractTransaction>;
        setFundToken(pool: PromiseOrValue<BigNumberish>, fundToken: PromiseOrValue<string>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<ContractTransaction>;
        getRgtDistributed(blockNumber: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<[BigNumber]>;
        'refreshDistributionSpeeds()'(overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<ContractTransaction>;
        'refreshDistributionSpeeds(uint8,uint256)'(pool: PromiseOrValue<BigNumberish>, newBalance: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<ContractTransaction>;
        'refreshDistributionSpeeds(uint8)'(pool: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<ContractTransaction>;
        getEthUsdPrice(overrides?: CallOverrides): Promise<[BigNumber]>;
        distributeRgt(holder: PromiseOrValue<string>, pool: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<ContractTransaction>;
        beforeFirstPoolTokenTransferIn(holder: PromiseOrValue<string>, pool: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<ContractTransaction>;
        getUnclaimedRgt(holder: PromiseOrValue<string>, overrides?: CallOverrides): Promise<[BigNumber]>;
        getPublicRgtClaimFee(blockNumber: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<[BigNumber]>;
        claimRgt(amount: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<ContractTransaction>;
        claimAllRgt(overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<ContractTransaction>;
        upgrade(newContract: PromiseOrValue<string>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<ContractTransaction>;
    };
    DISTRIBUTION_PERIOD(overrides?: CallOverrides): Promise<BigNumber>;
    FINAL_RGT_DISTRIBUTION(overrides?: CallOverrides): Promise<BigNumber>;
    disabled(overrides?: CallOverrides): Promise<boolean>;
    distributionEndBlock(overrides?: CallOverrides): Promise<BigNumber>;
    distributionStartBlock(overrides?: CallOverrides): Promise<BigNumber>;
    isOwner(overrides?: CallOverrides): Promise<boolean>;
    owner(overrides?: CallOverrides): Promise<string>;
    renounceOwnership(overrides?: Overrides & {
        from?: PromiseOrValue<string>;
    }): Promise<ContractTransaction>;
    transferOwnership(newOwner: PromiseOrValue<string>, overrides?: Overrides & {
        from?: PromiseOrValue<string>;
    }): Promise<ContractTransaction>;
    'initialize(address)'(sender: PromiseOrValue<string>, overrides?: Overrides & {
        from?: PromiseOrValue<string>;
    }): Promise<ContractTransaction>;
    'initialize(uint256,address[3],address[3])'(startBlock: PromiseOrValue<BigNumberish>, fundManagers: [PromiseOrValue<string>, PromiseOrValue<string>, PromiseOrValue<string>], fundTokens: [PromiseOrValue<string>, PromiseOrValue<string>, PromiseOrValue<string>], overrides?: Overrides & {
        from?: PromiseOrValue<string>;
    }): Promise<ContractTransaction>;
    setDisabled(_disabled: PromiseOrValue<boolean>, overrides?: Overrides & {
        from?: PromiseOrValue<string>;
    }): Promise<ContractTransaction>;
    setGovernanceToken(governanceToken: PromiseOrValue<string>, overrides?: Overrides & {
        from?: PromiseOrValue<string>;
    }): Promise<ContractTransaction>;
    setFundManager(pool: PromiseOrValue<BigNumberish>, fundManager: PromiseOrValue<string>, overrides?: Overrides & {
        from?: PromiseOrValue<string>;
    }): Promise<ContractTransaction>;
    setFundToken(pool: PromiseOrValue<BigNumberish>, fundToken: PromiseOrValue<string>, overrides?: Overrides & {
        from?: PromiseOrValue<string>;
    }): Promise<ContractTransaction>;
    getRgtDistributed(blockNumber: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<BigNumber>;
    'refreshDistributionSpeeds()'(overrides?: Overrides & {
        from?: PromiseOrValue<string>;
    }): Promise<ContractTransaction>;
    'refreshDistributionSpeeds(uint8,uint256)'(pool: PromiseOrValue<BigNumberish>, newBalance: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
        from?: PromiseOrValue<string>;
    }): Promise<ContractTransaction>;
    'refreshDistributionSpeeds(uint8)'(pool: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
        from?: PromiseOrValue<string>;
    }): Promise<ContractTransaction>;
    getEthUsdPrice(overrides?: CallOverrides): Promise<BigNumber>;
    distributeRgt(holder: PromiseOrValue<string>, pool: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
        from?: PromiseOrValue<string>;
    }): Promise<ContractTransaction>;
    beforeFirstPoolTokenTransferIn(holder: PromiseOrValue<string>, pool: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
        from?: PromiseOrValue<string>;
    }): Promise<ContractTransaction>;
    getUnclaimedRgt(holder: PromiseOrValue<string>, overrides?: CallOverrides): Promise<BigNumber>;
    getPublicRgtClaimFee(blockNumber: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<BigNumber>;
    claimRgt(amount: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
        from?: PromiseOrValue<string>;
    }): Promise<ContractTransaction>;
    claimAllRgt(overrides?: Overrides & {
        from?: PromiseOrValue<string>;
    }): Promise<ContractTransaction>;
    upgrade(newContract: PromiseOrValue<string>, overrides?: Overrides & {
        from?: PromiseOrValue<string>;
    }): Promise<ContractTransaction>;
    callStatic: {
        DISTRIBUTION_PERIOD(overrides?: CallOverrides): Promise<BigNumber>;
        FINAL_RGT_DISTRIBUTION(overrides?: CallOverrides): Promise<BigNumber>;
        disabled(overrides?: CallOverrides): Promise<boolean>;
        distributionEndBlock(overrides?: CallOverrides): Promise<BigNumber>;
        distributionStartBlock(overrides?: CallOverrides): Promise<BigNumber>;
        isOwner(overrides?: CallOverrides): Promise<boolean>;
        owner(overrides?: CallOverrides): Promise<string>;
        renounceOwnership(overrides?: CallOverrides): Promise<void>;
        transferOwnership(newOwner: PromiseOrValue<string>, overrides?: CallOverrides): Promise<void>;
        'initialize(address)'(sender: PromiseOrValue<string>, overrides?: CallOverrides): Promise<void>;
        'initialize(uint256,address[3],address[3])'(startBlock: PromiseOrValue<BigNumberish>, fundManagers: [PromiseOrValue<string>, PromiseOrValue<string>, PromiseOrValue<string>], fundTokens: [PromiseOrValue<string>, PromiseOrValue<string>, PromiseOrValue<string>], overrides?: CallOverrides): Promise<void>;
        setDisabled(_disabled: PromiseOrValue<boolean>, overrides?: CallOverrides): Promise<void>;
        setGovernanceToken(governanceToken: PromiseOrValue<string>, overrides?: CallOverrides): Promise<void>;
        setFundManager(pool: PromiseOrValue<BigNumberish>, fundManager: PromiseOrValue<string>, overrides?: CallOverrides): Promise<void>;
        setFundToken(pool: PromiseOrValue<BigNumberish>, fundToken: PromiseOrValue<string>, overrides?: CallOverrides): Promise<void>;
        getRgtDistributed(blockNumber: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<BigNumber>;
        'refreshDistributionSpeeds()'(overrides?: CallOverrides): Promise<void>;
        'refreshDistributionSpeeds(uint8,uint256)'(pool: PromiseOrValue<BigNumberish>, newBalance: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<void>;
        'refreshDistributionSpeeds(uint8)'(pool: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<void>;
        getEthUsdPrice(overrides?: CallOverrides): Promise<BigNumber>;
        distributeRgt(holder: PromiseOrValue<string>, pool: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<BigNumber>;
        beforeFirstPoolTokenTransferIn(holder: PromiseOrValue<string>, pool: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<void>;
        getUnclaimedRgt(holder: PromiseOrValue<string>, overrides?: CallOverrides): Promise<BigNumber>;
        getPublicRgtClaimFee(blockNumber: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<BigNumber>;
        claimRgt(amount: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<void>;
        claimAllRgt(overrides?: CallOverrides): Promise<BigNumber>;
        upgrade(newContract: PromiseOrValue<string>, overrides?: CallOverrides): Promise<void>;
    };
    filters: {
        'Claim(address,uint256,uint256,uint256)'(holder?: null, claimed?: null, transferred?: null, burned?: null): ClaimEventFilter;
        Claim(holder?: null, claimed?: null, transferred?: null, burned?: null): ClaimEventFilter;
        'Disabled()'(): DisabledEventFilter;
        Disabled(): DisabledEventFilter;
        'Enabled()'(): EnabledEventFilter;
        Enabled(): EnabledEventFilter;
        'OwnershipTransferred(address,address)'(previousOwner?: PromiseOrValue<string> | null, newOwner?: PromiseOrValue<string> | null): OwnershipTransferredEventFilter;
        OwnershipTransferred(previousOwner?: PromiseOrValue<string> | null, newOwner?: PromiseOrValue<string> | null): OwnershipTransferredEventFilter;
    };
    estimateGas: {
        DISTRIBUTION_PERIOD(overrides?: CallOverrides): Promise<BigNumber>;
        FINAL_RGT_DISTRIBUTION(overrides?: CallOverrides): Promise<BigNumber>;
        disabled(overrides?: CallOverrides): Promise<BigNumber>;
        distributionEndBlock(overrides?: CallOverrides): Promise<BigNumber>;
        distributionStartBlock(overrides?: CallOverrides): Promise<BigNumber>;
        isOwner(overrides?: CallOverrides): Promise<BigNumber>;
        owner(overrides?: CallOverrides): Promise<BigNumber>;
        renounceOwnership(overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<BigNumber>;
        transferOwnership(newOwner: PromiseOrValue<string>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<BigNumber>;
        'initialize(address)'(sender: PromiseOrValue<string>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<BigNumber>;
        'initialize(uint256,address[3],address[3])'(startBlock: PromiseOrValue<BigNumberish>, fundManagers: [PromiseOrValue<string>, PromiseOrValue<string>, PromiseOrValue<string>], fundTokens: [PromiseOrValue<string>, PromiseOrValue<string>, PromiseOrValue<string>], overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<BigNumber>;
        setDisabled(_disabled: PromiseOrValue<boolean>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<BigNumber>;
        setGovernanceToken(governanceToken: PromiseOrValue<string>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<BigNumber>;
        setFundManager(pool: PromiseOrValue<BigNumberish>, fundManager: PromiseOrValue<string>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<BigNumber>;
        setFundToken(pool: PromiseOrValue<BigNumberish>, fundToken: PromiseOrValue<string>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<BigNumber>;
        getRgtDistributed(blockNumber: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<BigNumber>;
        'refreshDistributionSpeeds()'(overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<BigNumber>;
        'refreshDistributionSpeeds(uint8,uint256)'(pool: PromiseOrValue<BigNumberish>, newBalance: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<BigNumber>;
        'refreshDistributionSpeeds(uint8)'(pool: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<BigNumber>;
        getEthUsdPrice(overrides?: CallOverrides): Promise<BigNumber>;
        distributeRgt(holder: PromiseOrValue<string>, pool: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<BigNumber>;
        beforeFirstPoolTokenTransferIn(holder: PromiseOrValue<string>, pool: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<BigNumber>;
        getUnclaimedRgt(holder: PromiseOrValue<string>, overrides?: CallOverrides): Promise<BigNumber>;
        getPublicRgtClaimFee(blockNumber: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<BigNumber>;
        claimRgt(amount: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<BigNumber>;
        claimAllRgt(overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<BigNumber>;
        upgrade(newContract: PromiseOrValue<string>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<BigNumber>;
    };
    populateTransaction: {
        DISTRIBUTION_PERIOD(overrides?: CallOverrides): Promise<PopulatedTransaction>;
        FINAL_RGT_DISTRIBUTION(overrides?: CallOverrides): Promise<PopulatedTransaction>;
        disabled(overrides?: CallOverrides): Promise<PopulatedTransaction>;
        distributionEndBlock(overrides?: CallOverrides): Promise<PopulatedTransaction>;
        distributionStartBlock(overrides?: CallOverrides): Promise<PopulatedTransaction>;
        isOwner(overrides?: CallOverrides): Promise<PopulatedTransaction>;
        owner(overrides?: CallOverrides): Promise<PopulatedTransaction>;
        renounceOwnership(overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<PopulatedTransaction>;
        transferOwnership(newOwner: PromiseOrValue<string>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<PopulatedTransaction>;
        'initialize(address)'(sender: PromiseOrValue<string>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<PopulatedTransaction>;
        'initialize(uint256,address[3],address[3])'(startBlock: PromiseOrValue<BigNumberish>, fundManagers: [PromiseOrValue<string>, PromiseOrValue<string>, PromiseOrValue<string>], fundTokens: [PromiseOrValue<string>, PromiseOrValue<string>, PromiseOrValue<string>], overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<PopulatedTransaction>;
        setDisabled(_disabled: PromiseOrValue<boolean>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<PopulatedTransaction>;
        setGovernanceToken(governanceToken: PromiseOrValue<string>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<PopulatedTransaction>;
        setFundManager(pool: PromiseOrValue<BigNumberish>, fundManager: PromiseOrValue<string>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<PopulatedTransaction>;
        setFundToken(pool: PromiseOrValue<BigNumberish>, fundToken: PromiseOrValue<string>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<PopulatedTransaction>;
        getRgtDistributed(blockNumber: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<PopulatedTransaction>;
        'refreshDistributionSpeeds()'(overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<PopulatedTransaction>;
        'refreshDistributionSpeeds(uint8,uint256)'(pool: PromiseOrValue<BigNumberish>, newBalance: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<PopulatedTransaction>;
        'refreshDistributionSpeeds(uint8)'(pool: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<PopulatedTransaction>;
        getEthUsdPrice(overrides?: CallOverrides): Promise<PopulatedTransaction>;
        distributeRgt(holder: PromiseOrValue<string>, pool: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<PopulatedTransaction>;
        beforeFirstPoolTokenTransferIn(holder: PromiseOrValue<string>, pool: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<PopulatedTransaction>;
        getUnclaimedRgt(holder: PromiseOrValue<string>, overrides?: CallOverrides): Promise<PopulatedTransaction>;
        getPublicRgtClaimFee(blockNumber: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<PopulatedTransaction>;
        claimRgt(amount: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<PopulatedTransaction>;
        claimAllRgt(overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<PopulatedTransaction>;
        upgrade(newContract: PromiseOrValue<string>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<PopulatedTransaction>;
    };
}
