/**
 * 状态实例核心实现
 */
import type { IStateInstance, StateInstanceId, StateScope, StateSubscriber, StateUpdater, Unsubscribe } from '../types';
/**
 * 基础状态实例实现
 *
 * 这是一个通用的状态实例实现，不依赖任何外部状态管理库
 *
 * @template T - 状态值类型
 */
export declare class StateInstance<T = unknown> implements IStateInstance<T> {
    /**
     * 状态实例标识符
     */
    private readonly id;
    /**
     * 状态作用域
     */
    private readonly scope?;
    /**
     * 当前状态值
     */
    private value;
    /**
     * 订阅者集合
     */
    private readonly subscribers;
    /**
     * 是否已销毁
     */
    private destroyed;
    /**
     * 开发模式标志
     */
    private readonly devMode;
    /**
     * 中间件函数数组
     */
    private readonly middleware;
    /**
     * 构造函数
     *
     * @param initialValue - 初始状态值
     * @param options - 状态实例配置选项
     */
    constructor(initialValue: T, options?: {
        id?: StateInstanceId;
        scope?: StateScope;
        devMode?: boolean;
        middleware?: Array<(value: unknown, previous: unknown) => unknown>;
    });
    /**
     * 获取当前状态值
     */
    get(): T;
    /**
     * 更新状态值
     */
    set(valueOrUpdater: T | StateUpdater<T>): void;
    /**
     * 订阅状态变化
     */
    subscribe(subscriber: StateSubscriber<T>): Unsubscribe;
    /**
     * 获取状态实例标识符
     */
    getId(): StateInstanceId;
    /**
     * 获取状态作用域
     */
    getScope(): StateScope | undefined;
    /**
     * 销毁状态实例
     */
    destroy(): void;
    /**
     * 检查状态实例是否已销毁
     */
    isDestroyed(): boolean;
    /**
     * 通知所有订阅者
     */
    private notifySubscribers;
}
//# sourceMappingURL=StateInstance.d.ts.map