import type { Promisable } from '@ariestools/sdk';
import type { AttoXL1, NetworkStakeStepRewardsRangeOptions, NetworkStakeStepRewardsTotalViewer, XL1RangeMultipliers } from '@xyo-network/xl1-protocol/protocol-lib';
import type { CreatableProviderParams } from '../../protocol-sdk/index.js';
import { AbstractCreatableProvider } from '../../protocol-sdk/index.js';
/** Configuration params for SimpleStepRewardsTotalViewer. */
export interface SimpleStepRewardsTotalViewerParams extends CreatableProviderParams {
    /** Reward multipliers applied when calculating network-stake rewards. */
    rewardMultipliers?: XL1RangeMultipliers;
}
/** Viewer for aggregated total network stake step rewards across all positions. */
export declare class SimpleStepRewardsTotalViewer extends AbstractCreatableProvider<SimpleStepRewardsTotalViewerParams> implements NetworkStakeStepRewardsTotalViewer {
    /** Connection kinds supported by this provider. */
    static readonly connectionTypes: readonly ["none"];
    /** Primary moniker used to resolve this provider. */
    static readonly defaultMoniker: "NetworkStakeStepRewardsTotalViewer";
    /** Provider monikers that must resolve before this provider can be created. */
    static readonly dependencies: never[];
    /** Provider monikers implemented by this provider class. */
    static readonly monikers: "NetworkStakeStepRewardsTotalViewer"[];
    /** Read, write, or mixed capability surface exposed by the provider. */
    static readonly surface: "node";
    /** Moniker implemented by this provider instance. */
    moniker: "NetworkStakeStepRewardsTotalViewer";
    /** Returns the reward multipliers result exposed by this provider. */
    get rewardMultipliers(): XL1RangeMultipliers;
    /** Returns the bonus result exposed by this provider. */
    bonus({ range }?: NetworkStakeStepRewardsRangeOptions): Promise<AttoXL1>;
    /** Returns the claimed result exposed by this provider. */
    claimed(_options?: NetworkStakeStepRewardsRangeOptions): Promisable<AttoXL1>;
    /** Returns the earned result exposed by this provider. */
    earned(options?: NetworkStakeStepRewardsRangeOptions): Promise<AttoXL1>;
    /** Returns the total result exposed by this provider. */
    total(options?: NetworkStakeStepRewardsRangeOptions): Promise<AttoXL1>;
    /** Returns the unclaimed result exposed by this provider. */
    unclaimed(_options?: NetworkStakeStepRewardsRangeOptions): Promisable<AttoXL1>;
    protected calculateRewards(_options?: NetworkStakeStepRewardsRangeOptions, _rewardMultipliers?: XL1RangeMultipliers): Promise<AttoXL1>;
}
//# sourceMappingURL=SimpleStepRewardsTotalViewer.d.ts.map