import React from 'react';
/**
* 技能模式配置接口
* @interface SkillModeConfig
* @property {boolean} [enable] - 是否启用技能模式组件,默认为 true
* @property {boolean} [open] - 是否打开技能模式
* @property {React.ReactNode} [title] - 技能模式标题,支持字符串或React节点
* @property {React.ReactNode | React.ReactNode[]} [rightContent] - 右侧自定义内容,支持单个节点或数组
* @property {boolean} [closable] - 是否显示默认关闭按钮
* @property {React.CSSProperties} [style] - 技能模式容器样式
* @property {string} [className] - 技能模式容器类名
*/
export interface SkillModeConfig {
/**
* 是否启用技能模式组件
* @description 控制整个技能模式组件是否渲染,当为 false 时组件完全不渲染任何内容
* @default true
* @example enable={skillModeFeatureEnabled}
*/
enable?: boolean;
/**
* 是否打开技能模式
* @description 控制技能模式的显示与隐藏状态
* @default false
* @example open={skillModeEnabled}
*/
open?: boolean;
/**
* 技能模式标题
* @description 支持字符串或React节点
* @example title="AI助手模式"
* @example title={助手模式}
*/
title?: React.ReactNode;
/**
* 右侧自定义内容
* @description 在技能模式右侧显示的自定义内容,支持单个节点或数组
* @example rightContent={v2.0}
* @example rightContent={[v2.0, ]}
*/
rightContent?: React.ReactNode | React.ReactNode[];
/**
* 是否显示默认关闭按钮
* @description 控制是否在右侧显示默认的关闭按钮,点击后会触发 onSkillModeOpenChange(false)
* @default true
* @example closable={false} // 不显示关闭按钮
*/
closable?: boolean;
/**
* 技能模式容器样式
* @description 应用于技能模式容器的内联样式
*/
style?: React.CSSProperties;
/**
* 技能模式容器类名
* @description 应用于技能模式容器的CSS类名
*/
className?: string;
}
export interface SkillModeBarProps {
/**
* 技能模式配置
*/
skillMode?: SkillModeConfig;
/**
* 技能模式开关状态变化时触发的回调函数
* @description 监听技能模式 open 状态的所有变化,包括用户点击关闭按钮和外部直接修改状态
* @param open 新的开关状态
* @example onSkillModeOpenChange={(open) => {
* console.log(`技能模式${open ? '打开' : '关闭'}`);
* setSkillModeEnabled(open);
* }}
*/
onSkillModeOpenChange?: (open: boolean) => void;
}
/**
* 技能模式条组件
* @description 用于显示技能模式的标题栏,包含标题、右侧内容和关闭按钮
* @param props - 组件属性
* @returns React 组件
*/
export declare const SkillModeBar: React.FC;