/**
 * Autogenerated file. Do not edit manually. */
export declare const AccrueRewards: {
    readonly anonymous: false;
    readonly inputs: readonly [{
        readonly indexed: true;
        readonly internalType: "contract ERC20";
        readonly name: "strategy";
        readonly type: "address";
    }, {
        readonly indexed: true;
        readonly internalType: "address";
        readonly name: "user";
        readonly type: "address";
    }, {
        readonly indexed: false;
        readonly internalType: "uint256";
        readonly name: "rewardsDelta";
        readonly type: "uint256";
    }, {
        readonly indexed: false;
        readonly internalType: "uint256";
        readonly name: "rewardsIndex";
        readonly type: "uint256";
    }];
    readonly name: "AccrueRewards";
    readonly type: "event";
};
export declare const AddStrategy: {
    readonly anonymous: false;
    readonly inputs: readonly [{
        readonly indexed: true;
        readonly internalType: "address";
        readonly name: "newStrategy";
        readonly type: "address";
    }];
    readonly name: "AddStrategy";
    readonly type: "event";
};
export declare const ClaimRewards: {
    readonly anonymous: false;
    readonly inputs: readonly [{
        readonly indexed: true;
        readonly internalType: "address";
        readonly name: "user";
        readonly type: "address";
    }, {
        readonly indexed: false;
        readonly internalType: "uint256";
        readonly name: "amount";
        readonly type: "uint256";
    }];
    readonly name: "ClaimRewards";
    readonly type: "event";
};
export declare const FlywheelBoosterUpdate: {
    readonly anonymous: false;
    readonly inputs: readonly [{
        readonly indexed: true;
        readonly internalType: "address";
        readonly name: "newBooster";
        readonly type: "address";
    }];
    readonly name: "FlywheelBoosterUpdate";
    readonly type: "event";
};
export declare const FlywheelRewardsUpdate: {
    readonly anonymous: false;
    readonly inputs: readonly [{
        readonly indexed: true;
        readonly internalType: "address";
        readonly name: "newFlywheelRewards";
        readonly type: "address";
    }];
    readonly name: "FlywheelRewardsUpdate";
    readonly type: "event";
};
export declare const Initialized: {
    readonly anonymous: false;
    readonly inputs: readonly [{
        readonly indexed: false;
        readonly internalType: "uint8";
        readonly name: "version";
        readonly type: "uint8";
    }];
    readonly name: "Initialized";
    readonly type: "event";
};
export declare const NewOwner: {
    readonly anonymous: false;
    readonly inputs: readonly [{
        readonly indexed: false;
        readonly internalType: "address";
        readonly name: "oldOwner";
        readonly type: "address";
    }, {
        readonly indexed: false;
        readonly internalType: "address";
        readonly name: "newOwner";
        readonly type: "address";
    }];
    readonly name: "NewOwner";
    readonly type: "event";
};
export declare const NewPendingOwner: {
    readonly anonymous: false;
    readonly inputs: readonly [{
        readonly indexed: false;
        readonly internalType: "address";
        readonly name: "oldPendingOwner";
        readonly type: "address";
    }, {
        readonly indexed: false;
        readonly internalType: "address";
        readonly name: "newPendingOwner";
        readonly type: "address";
    }];
    readonly name: "NewPendingOwner";
    readonly type: "event";
};
export declare const OwnershipTransferred: {
    readonly anonymous: false;
    readonly inputs: readonly [{
        readonly indexed: true;
        readonly internalType: "address";
        readonly name: "previousOwner";
        readonly type: "address";
    }, {
        readonly indexed: true;
        readonly internalType: "address";
        readonly name: "newOwner";
        readonly type: "address";
    }];
    readonly name: "OwnershipTransferred";
    readonly type: "event";
};
export declare const UpdatedFeeSettings: {
    readonly anonymous: false;
    readonly inputs: readonly [{
        readonly indexed: false;
        readonly internalType: "uint256";
        readonly name: "oldPerformanceFee";
        readonly type: "uint256";
    }, {
        readonly indexed: false;
        readonly internalType: "uint256";
        readonly name: "newPerformanceFee";
        readonly type: "uint256";
    }, {
        readonly indexed: false;
        readonly internalType: "address";
        readonly name: "oldFeeRecipient";
        readonly type: "address";
    }, {
        readonly indexed: false;
        readonly internalType: "address";
        readonly name: "newFeeRecipient";
        readonly type: "address";
    }];
    readonly name: "UpdatedFeeSettings";
    readonly type: "event";
};
export declare const _acceptOwner: {
    readonly inputs: readonly [];
    readonly name: "_acceptOwner";
    readonly outputs: readonly [];
    readonly stateMutability: "nonpayable";
    readonly type: "function";
};
export declare const _setPendingOwner: {
    readonly inputs: readonly [{
        readonly internalType: "address";
        readonly name: "newPendingOwner";
        readonly type: "address";
    }];
    readonly name: "_setPendingOwner";
    readonly outputs: readonly [];
    readonly stateMutability: "nonpayable";
    readonly type: "function";
};
export declare const accrue_address_address: {
    readonly inputs: readonly [{
        readonly internalType: "contract ERC20";
        readonly name: "strategy";
        readonly type: "address";
    }, {
        readonly internalType: "address";
        readonly name: "user";
        readonly type: "address";
    }];
    readonly name: "accrue";
    readonly outputs: readonly [{
        readonly internalType: "uint256";
        readonly name: "";
        readonly type: "uint256";
    }];
    readonly stateMutability: "nonpayable";
    readonly type: "function";
};
export declare const accrue_address_address_address: {
    readonly inputs: readonly [{
        readonly internalType: "contract ERC20";
        readonly name: "strategy";
        readonly type: "address";
    }, {
        readonly internalType: "address";
        readonly name: "user";
        readonly type: "address";
    }, {
        readonly internalType: "address";
        readonly name: "secondUser";
        readonly type: "address";
    }];
    readonly name: "accrue";
    readonly outputs: readonly [{
        readonly internalType: "uint256";
        readonly name: "";
        readonly type: "uint256";
    }, {
        readonly internalType: "uint256";
        readonly name: "";
        readonly type: "uint256";
    }];
    readonly stateMutability: "nonpayable";
    readonly type: "function";
};
export declare const addMarketForRewards: {
    readonly inputs: readonly [{
        readonly internalType: "contract ERC20";
        readonly name: "strategy";
        readonly type: "address";
    }];
    readonly name: "addMarketForRewards";
    readonly outputs: readonly [];
    readonly stateMutability: "nonpayable";
    readonly type: "function";
};
export declare const addStrategyForRewards: {
    readonly inputs: readonly [{
        readonly internalType: "contract ERC20";
        readonly name: "strategy";
        readonly type: "address";
    }];
    readonly name: "addStrategyForRewards";
    readonly outputs: readonly [];
    readonly stateMutability: "nonpayable";
    readonly type: "function";
};
export declare const allStrategies: {
    readonly inputs: readonly [{
        readonly internalType: "uint256";
        readonly name: "";
        readonly type: "uint256";
    }];
    readonly name: "allStrategies";
    readonly outputs: readonly [{
        readonly internalType: "contract ERC20";
        readonly name: "";
        readonly type: "address";
    }];
    readonly stateMutability: "view";
    readonly type: "function";
};
export declare const claimRewards: {
    readonly inputs: readonly [{
        readonly internalType: "address";
        readonly name: "user";
        readonly type: "address";
    }];
    readonly name: "claimRewards";
    readonly outputs: readonly [];
    readonly stateMutability: "nonpayable";
    readonly type: "function";
};
export declare const compAccrued: {
    readonly inputs: readonly [{
        readonly internalType: "address";
        readonly name: "user";
        readonly type: "address";
    }];
    readonly name: "compAccrued";
    readonly outputs: readonly [{
        readonly internalType: "uint256";
        readonly name: "";
        readonly type: "uint256";
    }];
    readonly stateMutability: "view";
    readonly type: "function";
};
export declare const feeRecipient: {
    readonly inputs: readonly [];
    readonly name: "feeRecipient";
    readonly outputs: readonly [{
        readonly internalType: "address";
        readonly name: "";
        readonly type: "address";
    }];
    readonly stateMutability: "view";
    readonly type: "function";
};
export declare const flywheelBooster: {
    readonly inputs: readonly [];
    readonly name: "flywheelBooster";
    readonly outputs: readonly [{
        readonly internalType: "contract IFlywheelBooster";
        readonly name: "";
        readonly type: "address";
    }];
    readonly stateMutability: "view";
    readonly type: "function";
};
export declare const flywheelPreBorrowerAction: {
    readonly inputs: readonly [{
        readonly internalType: "address";
        readonly name: "market";
        readonly type: "address";
    }, {
        readonly internalType: "address";
        readonly name: "borrower";
        readonly type: "address";
    }];
    readonly name: "flywheelPreBorrowerAction";
    readonly outputs: readonly [];
    readonly stateMutability: "nonpayable";
    readonly type: "function";
};
export declare const flywheelPreSupplierAction: {
    readonly inputs: readonly [{
        readonly internalType: "address";
        readonly name: "market";
        readonly type: "address";
    }, {
        readonly internalType: "address";
        readonly name: "supplier";
        readonly type: "address";
    }];
    readonly name: "flywheelPreSupplierAction";
    readonly outputs: readonly [];
    readonly stateMutability: "nonpayable";
    readonly type: "function";
};
export declare const flywheelPreTransferAction: {
    readonly inputs: readonly [{
        readonly internalType: "address";
        readonly name: "market";
        readonly type: "address";
    }, {
        readonly internalType: "address";
        readonly name: "src";
        readonly type: "address";
    }, {
        readonly internalType: "address";
        readonly name: "dst";
        readonly type: "address";
    }];
    readonly name: "flywheelPreTransferAction";
    readonly outputs: readonly [];
    readonly stateMutability: "nonpayable";
    readonly type: "function";
};
export declare const flywheelRewards: {
    readonly inputs: readonly [];
    readonly name: "flywheelRewards";
    readonly outputs: readonly [{
        readonly internalType: "contract IFlywheelRewards";
        readonly name: "";
        readonly type: "address";
    }];
    readonly stateMutability: "view";
    readonly type: "function";
};
export declare const getAllStrategies: {
    readonly inputs: readonly [];
    readonly name: "getAllStrategies";
    readonly outputs: readonly [{
        readonly internalType: "contract ERC20[]";
        readonly name: "";
        readonly type: "address[]";
    }];
    readonly stateMutability: "view";
    readonly type: "function";
};
export declare const initialize: {
    readonly inputs: readonly [{
        readonly internalType: "contract ERC20";
        readonly name: "_rewardToken";
        readonly type: "address";
    }, {
        readonly internalType: "contract IFlywheelRewards";
        readonly name: "_flywheelRewards";
        readonly type: "address";
    }, {
        readonly internalType: "contract IFlywheelBooster";
        readonly name: "_flywheelBooster";
        readonly type: "address";
    }, {
        readonly internalType: "address";
        readonly name: "_owner";
        readonly type: "address";
    }];
    readonly name: "initialize";
    readonly outputs: readonly [];
    readonly stateMutability: "nonpayable";
    readonly type: "function";
};
export declare const isFlywheel: {
    readonly inputs: readonly [];
    readonly name: "isFlywheel";
    readonly outputs: readonly [{
        readonly internalType: "bool";
        readonly name: "";
        readonly type: "bool";
    }];
    readonly stateMutability: "view";
    readonly type: "function";
};
export declare const isRewardsDistributor: {
    readonly inputs: readonly [];
    readonly name: "isRewardsDistributor";
    readonly outputs: readonly [{
        readonly internalType: "bool";
        readonly name: "";
        readonly type: "bool";
    }];
    readonly stateMutability: "view";
    readonly type: "function";
};
export declare const marketState: {
    readonly inputs: readonly [{
        readonly internalType: "contract ERC20";
        readonly name: "strategy";
        readonly type: "address";
    }];
    readonly name: "marketState";
    readonly outputs: readonly [{
        readonly internalType: "uint224";
        readonly name: "";
        readonly type: "uint224";
    }, {
        readonly internalType: "uint32";
        readonly name: "";
        readonly type: "uint32";
    }];
    readonly stateMutability: "view";
    readonly type: "function";
};
export declare const owner: {
    readonly inputs: readonly [];
    readonly name: "owner";
    readonly outputs: readonly [{
        readonly internalType: "address";
        readonly name: "";
        readonly type: "address";
    }];
    readonly stateMutability: "view";
    readonly type: "function";
};
export declare const pendingOwner: {
    readonly inputs: readonly [];
    readonly name: "pendingOwner";
    readonly outputs: readonly [{
        readonly internalType: "address";
        readonly name: "";
        readonly type: "address";
    }];
    readonly stateMutability: "view";
    readonly type: "function";
};
export declare const performanceFee: {
    readonly inputs: readonly [];
    readonly name: "performanceFee";
    readonly outputs: readonly [{
        readonly internalType: "uint256";
        readonly name: "";
        readonly type: "uint256";
    }];
    readonly stateMutability: "view";
    readonly type: "function";
};
export declare const renounceOwnership: {
    readonly inputs: readonly [];
    readonly name: "renounceOwnership";
    readonly outputs: readonly [];
    readonly stateMutability: "nonpayable";
    readonly type: "function";
};
export declare const rewardToken: {
    readonly inputs: readonly [];
    readonly name: "rewardToken";
    readonly outputs: readonly [{
        readonly internalType: "contract ERC20";
        readonly name: "";
        readonly type: "address";
    }];
    readonly stateMutability: "view";
    readonly type: "function";
};
export declare const rewardsAccrued: {
    readonly inputs: readonly [{
        readonly internalType: "address";
        readonly name: "user";
        readonly type: "address";
    }];
    readonly name: "rewardsAccrued";
    readonly outputs: readonly [{
        readonly internalType: "uint256";
        readonly name: "";
        readonly type: "uint256";
    }];
    readonly stateMutability: "nonpayable";
    readonly type: "function";
};
export declare const setBooster: {
    readonly inputs: readonly [{
        readonly internalType: "contract IFlywheelBooster";
        readonly name: "newBooster";
        readonly type: "address";
    }];
    readonly name: "setBooster";
    readonly outputs: readonly [];
    readonly stateMutability: "nonpayable";
    readonly type: "function";
};
export declare const setFlywheelRewards: {
    readonly inputs: readonly [{
        readonly internalType: "contract IFlywheelRewards";
        readonly name: "newFlywheelRewards";
        readonly type: "address";
    }];
    readonly name: "setFlywheelRewards";
    readonly outputs: readonly [];
    readonly stateMutability: "nonpayable";
    readonly type: "function";
};
export declare const strategyState: {
    readonly inputs: readonly [{
        readonly internalType: "contract ERC20";
        readonly name: "strategy";
        readonly type: "address";
    }];
    readonly name: "strategyState";
    readonly outputs: readonly [{
        readonly internalType: "uint224";
        readonly name: "index";
        readonly type: "uint224";
    }, {
        readonly internalType: "uint32";
        readonly name: "lastUpdatedTimestamp";
        readonly type: "uint32";
    }];
    readonly stateMutability: "nonpayable";
    readonly type: "function";
};
export declare const transferOwnership: {
    readonly inputs: readonly [{
        readonly internalType: "address";
        readonly name: "newOwner";
        readonly type: "address";
    }];
    readonly name: "transferOwnership";
    readonly outputs: readonly [];
    readonly stateMutability: "nonpayable";
    readonly type: "function";
};
export declare const updateFeeSettings: {
    readonly inputs: readonly [{
        readonly internalType: "uint256";
        readonly name: "_performanceFee";
        readonly type: "uint256";
    }, {
        readonly internalType: "address";
        readonly name: "_feeRecipient";
        readonly type: "address";
    }];
    readonly name: "updateFeeSettings";
    readonly outputs: readonly [];
    readonly stateMutability: "nonpayable";
    readonly type: "function";
};
export declare const userIndex: {
    readonly inputs: readonly [{
        readonly internalType: "contract ERC20";
        readonly name: "strategy";
        readonly type: "address";
    }, {
        readonly internalType: "address";
        readonly name: "user";
        readonly type: "address";
    }];
    readonly name: "userIndex";
    readonly outputs: readonly [{
        readonly internalType: "uint224";
        readonly name: "";
        readonly type: "uint224";
    }];
    readonly stateMutability: "nonpayable";
    readonly type: "function";
};
declare const _default: readonly [{
    readonly anonymous: false;
    readonly inputs: readonly [{
        readonly indexed: true;
        readonly internalType: "contract ERC20";
        readonly name: "strategy";
        readonly type: "address";
    }, {
        readonly indexed: true;
        readonly internalType: "address";
        readonly name: "user";
        readonly type: "address";
    }, {
        readonly indexed: false;
        readonly internalType: "uint256";
        readonly name: "rewardsDelta";
        readonly type: "uint256";
    }, {
        readonly indexed: false;
        readonly internalType: "uint256";
        readonly name: "rewardsIndex";
        readonly type: "uint256";
    }];
    readonly name: "AccrueRewards";
    readonly type: "event";
}, {
    readonly anonymous: false;
    readonly inputs: readonly [{
        readonly indexed: true;
        readonly internalType: "address";
        readonly name: "newStrategy";
        readonly type: "address";
    }];
    readonly name: "AddStrategy";
    readonly type: "event";
}, {
    readonly anonymous: false;
    readonly inputs: readonly [{
        readonly indexed: true;
        readonly internalType: "address";
        readonly name: "user";
        readonly type: "address";
    }, {
        readonly indexed: false;
        readonly internalType: "uint256";
        readonly name: "amount";
        readonly type: "uint256";
    }];
    readonly name: "ClaimRewards";
    readonly type: "event";
}, {
    readonly anonymous: false;
    readonly inputs: readonly [{
        readonly indexed: true;
        readonly internalType: "address";
        readonly name: "newBooster";
        readonly type: "address";
    }];
    readonly name: "FlywheelBoosterUpdate";
    readonly type: "event";
}, {
    readonly anonymous: false;
    readonly inputs: readonly [{
        readonly indexed: true;
        readonly internalType: "address";
        readonly name: "newFlywheelRewards";
        readonly type: "address";
    }];
    readonly name: "FlywheelRewardsUpdate";
    readonly type: "event";
}, {
    readonly anonymous: false;
    readonly inputs: readonly [{
        readonly indexed: false;
        readonly internalType: "uint8";
        readonly name: "version";
        readonly type: "uint8";
    }];
    readonly name: "Initialized";
    readonly type: "event";
}, {
    readonly anonymous: false;
    readonly inputs: readonly [{
        readonly indexed: false;
        readonly internalType: "address";
        readonly name: "oldOwner";
        readonly type: "address";
    }, {
        readonly indexed: false;
        readonly internalType: "address";
        readonly name: "newOwner";
        readonly type: "address";
    }];
    readonly name: "NewOwner";
    readonly type: "event";
}, {
    readonly anonymous: false;
    readonly inputs: readonly [{
        readonly indexed: false;
        readonly internalType: "address";
        readonly name: "oldPendingOwner";
        readonly type: "address";
    }, {
        readonly indexed: false;
        readonly internalType: "address";
        readonly name: "newPendingOwner";
        readonly type: "address";
    }];
    readonly name: "NewPendingOwner";
    readonly type: "event";
}, {
    readonly anonymous: false;
    readonly inputs: readonly [{
        readonly indexed: true;
        readonly internalType: "address";
        readonly name: "previousOwner";
        readonly type: "address";
    }, {
        readonly indexed: true;
        readonly internalType: "address";
        readonly name: "newOwner";
        readonly type: "address";
    }];
    readonly name: "OwnershipTransferred";
    readonly type: "event";
}, {
    readonly anonymous: false;
    readonly inputs: readonly [{
        readonly indexed: false;
        readonly internalType: "uint256";
        readonly name: "oldPerformanceFee";
        readonly type: "uint256";
    }, {
        readonly indexed: false;
        readonly internalType: "uint256";
        readonly name: "newPerformanceFee";
        readonly type: "uint256";
    }, {
        readonly indexed: false;
        readonly internalType: "address";
        readonly name: "oldFeeRecipient";
        readonly type: "address";
    }, {
        readonly indexed: false;
        readonly internalType: "address";
        readonly name: "newFeeRecipient";
        readonly type: "address";
    }];
    readonly name: "UpdatedFeeSettings";
    readonly type: "event";
}, {
    readonly inputs: readonly [];
    readonly name: "_acceptOwner";
    readonly outputs: readonly [];
    readonly stateMutability: "nonpayable";
    readonly type: "function";
}, {
    readonly inputs: readonly [{
        readonly internalType: "address";
        readonly name: "newPendingOwner";
        readonly type: "address";
    }];
    readonly name: "_setPendingOwner";
    readonly outputs: readonly [];
    readonly stateMutability: "nonpayable";
    readonly type: "function";
}, {
    readonly inputs: readonly [{
        readonly internalType: "contract ERC20";
        readonly name: "strategy";
        readonly type: "address";
    }, {
        readonly internalType: "address";
        readonly name: "user";
        readonly type: "address";
    }];
    readonly name: "accrue";
    readonly outputs: readonly [{
        readonly internalType: "uint256";
        readonly name: "";
        readonly type: "uint256";
    }];
    readonly stateMutability: "nonpayable";
    readonly type: "function";
}, {
    readonly inputs: readonly [{
        readonly internalType: "contract ERC20";
        readonly name: "strategy";
        readonly type: "address";
    }, {
        readonly internalType: "address";
        readonly name: "user";
        readonly type: "address";
    }, {
        readonly internalType: "address";
        readonly name: "secondUser";
        readonly type: "address";
    }];
    readonly name: "accrue";
    readonly outputs: readonly [{
        readonly internalType: "uint256";
        readonly name: "";
        readonly type: "uint256";
    }, {
        readonly internalType: "uint256";
        readonly name: "";
        readonly type: "uint256";
    }];
    readonly stateMutability: "nonpayable";
    readonly type: "function";
}, {
    readonly inputs: readonly [{
        readonly internalType: "contract ERC20";
        readonly name: "strategy";
        readonly type: "address";
    }];
    readonly name: "addMarketForRewards";
    readonly outputs: readonly [];
    readonly stateMutability: "nonpayable";
    readonly type: "function";
}, {
    readonly inputs: readonly [{
        readonly internalType: "contract ERC20";
        readonly name: "strategy";
        readonly type: "address";
    }];
    readonly name: "addStrategyForRewards";
    readonly outputs: readonly [];
    readonly stateMutability: "nonpayable";
    readonly type: "function";
}, {
    readonly inputs: readonly [{
        readonly internalType: "uint256";
        readonly name: "";
        readonly type: "uint256";
    }];
    readonly name: "allStrategies";
    readonly outputs: readonly [{
        readonly internalType: "contract ERC20";
        readonly name: "";
        readonly type: "address";
    }];
    readonly stateMutability: "view";
    readonly type: "function";
}, {
    readonly inputs: readonly [{
        readonly internalType: "address";
        readonly name: "user";
        readonly type: "address";
    }];
    readonly name: "claimRewards";
    readonly outputs: readonly [];
    readonly stateMutability: "nonpayable";
    readonly type: "function";
}, {
    readonly inputs: readonly [{
        readonly internalType: "address";
        readonly name: "user";
        readonly type: "address";
    }];
    readonly name: "compAccrued";
    readonly outputs: readonly [{
        readonly internalType: "uint256";
        readonly name: "";
        readonly type: "uint256";
    }];
    readonly stateMutability: "view";
    readonly type: "function";
}, {
    readonly inputs: readonly [];
    readonly name: "feeRecipient";
    readonly outputs: readonly [{
        readonly internalType: "address";
        readonly name: "";
        readonly type: "address";
    }];
    readonly stateMutability: "view";
    readonly type: "function";
}, {
    readonly inputs: readonly [];
    readonly name: "flywheelBooster";
    readonly outputs: readonly [{
        readonly internalType: "contract IFlywheelBooster";
        readonly name: "";
        readonly type: "address";
    }];
    readonly stateMutability: "view";
    readonly type: "function";
}, {
    readonly inputs: readonly [{
        readonly internalType: "address";
        readonly name: "market";
        readonly type: "address";
    }, {
        readonly internalType: "address";
        readonly name: "borrower";
        readonly type: "address";
    }];
    readonly name: "flywheelPreBorrowerAction";
    readonly outputs: readonly [];
    readonly stateMutability: "nonpayable";
    readonly type: "function";
}, {
    readonly inputs: readonly [{
        readonly internalType: "address";
        readonly name: "market";
        readonly type: "address";
    }, {
        readonly internalType: "address";
        readonly name: "supplier";
        readonly type: "address";
    }];
    readonly name: "flywheelPreSupplierAction";
    readonly outputs: readonly [];
    readonly stateMutability: "nonpayable";
    readonly type: "function";
}, {
    readonly inputs: readonly [{
        readonly internalType: "address";
        readonly name: "market";
        readonly type: "address";
    }, {
        readonly internalType: "address";
        readonly name: "src";
        readonly type: "address";
    }, {
        readonly internalType: "address";
        readonly name: "dst";
        readonly type: "address";
    }];
    readonly name: "flywheelPreTransferAction";
    readonly outputs: readonly [];
    readonly stateMutability: "nonpayable";
    readonly type: "function";
}, {
    readonly inputs: readonly [];
    readonly name: "flywheelRewards";
    readonly outputs: readonly [{
        readonly internalType: "contract IFlywheelRewards";
        readonly name: "";
        readonly type: "address";
    }];
    readonly stateMutability: "view";
    readonly type: "function";
}, {
    readonly inputs: readonly [];
    readonly name: "getAllStrategies";
    readonly outputs: readonly [{
        readonly internalType: "contract ERC20[]";
        readonly name: "";
        readonly type: "address[]";
    }];
    readonly stateMutability: "view";
    readonly type: "function";
}, {
    readonly inputs: readonly [{
        readonly internalType: "contract ERC20";
        readonly name: "_rewardToken";
        readonly type: "address";
    }, {
        readonly internalType: "contract IFlywheelRewards";
        readonly name: "_flywheelRewards";
        readonly type: "address";
    }, {
        readonly internalType: "contract IFlywheelBooster";
        readonly name: "_flywheelBooster";
        readonly type: "address";
    }, {
        readonly internalType: "address";
        readonly name: "_owner";
        readonly type: "address";
    }];
    readonly name: "initialize";
    readonly outputs: readonly [];
    readonly stateMutability: "nonpayable";
    readonly type: "function";
}, {
    readonly inputs: readonly [];
    readonly name: "isFlywheel";
    readonly outputs: readonly [{
        readonly internalType: "bool";
        readonly name: "";
        readonly type: "bool";
    }];
    readonly stateMutability: "view";
    readonly type: "function";
}, {
    readonly inputs: readonly [];
    readonly name: "isRewardsDistributor";
    readonly outputs: readonly [{
        readonly internalType: "bool";
        readonly name: "";
        readonly type: "bool";
    }];
    readonly stateMutability: "view";
    readonly type: "function";
}, {
    readonly inputs: readonly [{
        readonly internalType: "contract ERC20";
        readonly name: "strategy";
        readonly type: "address";
    }];
    readonly name: "marketState";
    readonly outputs: readonly [{
        readonly internalType: "uint224";
        readonly name: "";
        readonly type: "uint224";
    }, {
        readonly internalType: "uint32";
        readonly name: "";
        readonly type: "uint32";
    }];
    readonly stateMutability: "view";
    readonly type: "function";
}, {
    readonly inputs: readonly [];
    readonly name: "owner";
    readonly outputs: readonly [{
        readonly internalType: "address";
        readonly name: "";
        readonly type: "address";
    }];
    readonly stateMutability: "view";
    readonly type: "function";
}, {
    readonly inputs: readonly [];
    readonly name: "pendingOwner";
    readonly outputs: readonly [{
        readonly internalType: "address";
        readonly name: "";
        readonly type: "address";
    }];
    readonly stateMutability: "view";
    readonly type: "function";
}, {
    readonly inputs: readonly [];
    readonly name: "performanceFee";
    readonly outputs: readonly [{
        readonly internalType: "uint256";
        readonly name: "";
        readonly type: "uint256";
    }];
    readonly stateMutability: "view";
    readonly type: "function";
}, {
    readonly inputs: readonly [];
    readonly name: "renounceOwnership";
    readonly outputs: readonly [];
    readonly stateMutability: "nonpayable";
    readonly type: "function";
}, {
    readonly inputs: readonly [];
    readonly name: "rewardToken";
    readonly outputs: readonly [{
        readonly internalType: "contract ERC20";
        readonly name: "";
        readonly type: "address";
    }];
    readonly stateMutability: "view";
    readonly type: "function";
}, {
    readonly inputs: readonly [{
        readonly internalType: "address";
        readonly name: "user";
        readonly type: "address";
    }];
    readonly name: "rewardsAccrued";
    readonly outputs: readonly [{
        readonly internalType: "uint256";
        readonly name: "";
        readonly type: "uint256";
    }];
    readonly stateMutability: "nonpayable";
    readonly type: "function";
}, {
    readonly inputs: readonly [{
        readonly internalType: "contract IFlywheelBooster";
        readonly name: "newBooster";
        readonly type: "address";
    }];
    readonly name: "setBooster";
    readonly outputs: readonly [];
    readonly stateMutability: "nonpayable";
    readonly type: "function";
}, {
    readonly inputs: readonly [{
        readonly internalType: "contract IFlywheelRewards";
        readonly name: "newFlywheelRewards";
        readonly type: "address";
    }];
    readonly name: "setFlywheelRewards";
    readonly outputs: readonly [];
    readonly stateMutability: "nonpayable";
    readonly type: "function";
}, {
    readonly inputs: readonly [{
        readonly internalType: "contract ERC20";
        readonly name: "strategy";
        readonly type: "address";
    }];
    readonly name: "strategyState";
    readonly outputs: readonly [{
        readonly internalType: "uint224";
        readonly name: "index";
        readonly type: "uint224";
    }, {
        readonly internalType: "uint32";
        readonly name: "lastUpdatedTimestamp";
        readonly type: "uint32";
    }];
    readonly stateMutability: "nonpayable";
    readonly type: "function";
}, {
    readonly inputs: readonly [{
        readonly internalType: "address";
        readonly name: "newOwner";
        readonly type: "address";
    }];
    readonly name: "transferOwnership";
    readonly outputs: readonly [];
    readonly stateMutability: "nonpayable";
    readonly type: "function";
}, {
    readonly inputs: readonly [{
        readonly internalType: "uint256";
        readonly name: "_performanceFee";
        readonly type: "uint256";
    }, {
        readonly internalType: "address";
        readonly name: "_feeRecipient";
        readonly type: "address";
    }];
    readonly name: "updateFeeSettings";
    readonly outputs: readonly [];
    readonly stateMutability: "nonpayable";
    readonly type: "function";
}, {
    readonly inputs: readonly [{
        readonly internalType: "contract ERC20";
        readonly name: "strategy";
        readonly type: "address";
    }, {
        readonly internalType: "address";
        readonly name: "user";
        readonly type: "address";
    }];
    readonly name: "userIndex";
    readonly outputs: readonly [{
        readonly internalType: "uint224";
        readonly name: "";
        readonly type: "uint224";
    }];
    readonly stateMutability: "nonpayable";
    readonly type: "function";
}];
export default _default;
