ui-lib/lib/ui/checkbox.d.ts

50 lines
1.4 KiB
TypeScript

/**
* 复选框选项
*/
interface CheckboxOptions {
/** 样式类名 */
className?: string;
/** 是否可用 */
enabled?: boolean;
/** html 名称 */
name?: string;
/** 焦点索引 */
tabIndex?: Number;
/** 样式分类,可以是 ['`fa-light`', '`fa-regular`', '`fa-solid`'] 其中之一 */
type?: string;
/** 标签 */
label?: string | HTMLElement;
/** 是否已选中 */
checked?: boolean;
/** 图片高度 */
imageHeight?: Number;
/** 选中时显示的元素 */
checkedNode?: HTMLElement;
/** 未选中时显示的元素 */
uncheckedNode?: HTMLElement;
/** 自定义 html 属性 */
customAttributes?: { [key: string]: string };
/**
* 复选框选择状态改变时触发
* @param this 当前复选框对应的 HtmlInput 元素
* @param ev 选择事件对象
*/
onchange?: (this: HTMLInputElement, ev: Event) => any;
}
/**
* 创建一个单选框
* @param opts 单选框参数
*/
export function createRadiobox(opts?: CheckboxOptions): HTMLElement
/**
* 创建一个复选框
* @param opts 复选框参数
*/
export function createCheckbox(opts?: CheckboxOptions): HTMLElement
/**
* 解析容器元素内符合条件的子元素为复选框元素
* @param container 容器元素
* @param legacy 是否使用传统模式
*/
export function resolveCheckbox(container?: HTMLElement, legacy?: boolean): HTMLElement