/** * DevToolsPanel - 在浏览器开发者工具的Console中创建一个固定的、可交互的UI面板。 * 这个版本使用 property getter 实现“点击即执行”的功能。 * * @example * // 注册一个按钮 * DevToolsPanel.register({ * id: 'reloadBtn', * text: '🔄 刷新页面', * description: '点击左侧箭头或属性名来刷新页面', * css: 'color: #28a745; font-weight: bold;', * action: () => window.location.reload() * }); * * // 注册一个清除 LocalStorage 的按钮 * DevToolsPanel.register({ * id: 'clearStorage', * text: '🗑️ 清除LocalStorage', * description: '点击以清除 LocalStorage', * css: 'color: #dc3545;', * action: () => { * localStorage.clear(); * DevToolsPanel.log('LocalStorage 已清除!'); * } * }); * * // 移除按钮 * DevToolsPanel.unregister('reloadBtn'); * * // 打印一条属于面板的消息 * DevToolsPanel.log('欢迎使用!'); */ declare class DevToolsPanel { private static instance; private readonly title; private readonly items; private readonly logs; private readonly panelTitleCss; private readonly logCss; private constructor(); static getInstance(): DevToolsPanel; /** * 渲染整个面板到控制台 */ private render; /** * 注册一个可交互的项 (按钮) 到面板 * @param itemConfig - 面板项的配置 */ register(itemConfig: PanelItemConfig): void; /** * 从面板中移除一个项 * @param id - 要移除的项的ID */ unregister(id: string): void; /** * 在面板内部打印一条日志 * @param args - 要打印的消息 */ log(...args: any[]): void; /** * 清除面板内部的所有日志 */ clearLogs(): void; } interface PanelItemConfig { id: string; text: string; action: () => void; css?: string; description?: string; } export declare const MyDevPanel: DevToolsPanel; export {}; //# sourceMappingURL=dev-tools-panel.d.ts.map