import type { Position, StakeEvent, StakeEventFilter, StakeEventName, StakeEventsViewer } from '@xyo-network/xl1-protocol/protocol-lib';
import type { CreatableProviderParams } from '../../CreatableProvider/index.js';
import { AbstractCreatableProvider } from '../../CreatableProvider/index.js';
/** Parameters for SimpleStakeEvents. */
export interface SimpleStakeEventsParams extends CreatableProviderParams {
    /** Static positions to serve. Defaults to none — a memory-backed viewer has no stake events. */
    positions?: Position[];
}
/** SimpleStakeEventsViewer implementation. */
export declare class SimpleStakeEventsViewer extends AbstractCreatableProvider<SimpleStakeEventsParams> implements StakeEventsViewer {
    /** Connection kinds supported by this provider. */
    static readonly connectionTypes: readonly ["none"];
    /** Primary moniker used to resolve this provider. */
    static readonly defaultMoniker: "StakeEventsViewer";
    /** 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: "StakeEventsViewer"[];
    /** Read, write, or mixed capability surface exposed by the provider. */
    static readonly surface: "node";
    /** Moniker implemented by this provider instance. */
    moniker: "StakeEventsViewer";
    protected get positions(): Position[];
    /** Returns the position count result exposed by this provider. */
    positionCount(range: [number, number | 'latest']): number;
    /** Returns the stake events result exposed by this provider. */
    stakeEvents<TName extends StakeEventName>(range: [number, number | 'latest'], { name }?: StakeEventFilter<TName>): StakeEvent<TName>[];
    protected startHandler(): Promise<void>;
    private eventsFromPositions;
    private positionsFromRange;
}
//# sourceMappingURL=SimpleStakeEventsViewer.d.ts.map