/**
 * DEComp 模块
 * 这是一个组件管理模块，负责组件的生命周期、状态管理和事件处理
 * @module DEComp
 */
import { IDEComp, DERecord, DEEventFunction, Tag, ObjTag, DECompOption } from "./DETypes";
/**
 * 组件类
 * 实现了 IDEComp 接口，提供组件的状态管理和生命周期功能
 */
export default class DEComp<T extends DERecord> implements IDEComp<T> {
    #private;
    /**
     * 构造函数
     * @param tag 组件标签
     * @param options 配置选项
     * @param state 初始状态
     */
    constructor(tag: Tag | ObjTag, options?: DECompOption, state?: T);
    /**
     * 获取组件存储
     */
    private get compStore();
    /**
     * 设置组件存储
     */
    private set compStore(value);
    /**
     * 获取状态变更事件处理函数列表
     */
    private get onStateChangingHandler();
    /**
     * 获取就绪等待器列表
     */
    private get onReadyWaiters();
    /**
     * 获取脏状态
     */
    private get dirtyState();
    /**
     * 设置脏状态
     */
    private set dirtyState(value);
    /**
     * 获取配置选项
     */
    get options(): DECompOption;
    /**
     * 设置配置选项
     */
    set options(options: DERecord);
    /**
     * 等待组件就绪
     */
    waitReady: () => Promise<void>;
    /**
     * 设置组件就绪状态
     * @param isReady 是否就绪
     */
    setReady: (isReady: boolean) => Promise<void>;
    /**
     * 获取组件就绪状态
     */
    get isReady(): boolean;
    /**
     * 设置组件就绪状态
     */
    private set isReady(value);
    /**
     * 获取组件标签
     */
    get tag(): Tag;
    /**
     * 获取组件状态
     */
    get state(): T;
    /**
     * 注册状态变更事件处理函数
     * @param callback 回调函数
     */
    onStateChanging(callback: DEEventFunction): void;
    /**
     * 移除事件处理函数
     * @param callback 要移除的函数
     */
    removeHandler(callback: DEEventFunction): void;
    /**
     * 更新组件状态
     * @param target 目标状态
     * @param deep 是否深度更新
     */
    update: (target: Partial<T>, deep?: boolean) => Promise<Partial<T>>;
    [property: string]: any;
}
