import type { RendererProps, SchemaClassName } from 'jamis-core';
import type { BaseSchema, SchemaCollection } from '../types';
/**
 * Card2 新卡片渲染器。
 *
 */
export interface Card2Schema extends BaseSchema {
    /**
     * 指定为 card2 类型
     */
    type: 'card2';
    /**
     * 内容
     */
    body: SchemaCollection;
    /**
     * body 类名
     */
    bodyClassName?: SchemaClassName;
    /**
     * 隐藏选框
     */
    hideCheckToggler?: boolean;
    /**
     * 不配置href且cards容器下生效，点击整个卡片触发选中
     */
    checkOnItemClick: boolean;
    /**
     * 渲染标签
     */
    wrapperComponent?: string;
}
export interface Card2Props extends RendererProps, Omit<Card2Schema, 'type' | 'className'> {
    /**
     * 数据
     */
    item: any;
    /**
     * 是否可选，当disabled时，将禁用
     */
    selectable?: boolean;
    /**
     * 是否可多选
     */
    multiple?: boolean;
    /**
     * 是否默认选中
     */
    selected?: boolean;
    /**
     * 选择事件
     */
    onCheck: (item: any) => Promise<void>;
    onClickBefore?: () => Promise<boolean>;
}
