import type { BaseSchema, SchemaApi, SchemaClassName, SchemaCollection, SchemaTokenizeableString, StaticControlSchemaBase } from '../types';
/**
 * Mapping 映射展示控件。
 *
 */
export interface MappingSchema extends BaseSchema {
    /**
     * 指定为映射展示控件
     */
    type: 'map' | 'mapping';
    /**
     * 配置映射规则，值可以使用模板语法。当 key 为 * 时表示 else，也就是说值没有映射到任何规则时用 * 对应的值展示。
     */
    map?: {
        [propName: string]: SchemaCollection;
    };
    /**
     * 如果想远程拉取字典，请配置 source 为接口。
     */
    source?: SchemaApi | SchemaTokenizeableString;
    /**
     * 占位符
     */
    placeholder?: string;
    /**
     * 每一项的样式类
     */
    itemClassName?: SchemaClassName;
}
export interface StaticMappingSchema extends Omit<MappingSchema, 'type'>, StaticControlSchemaBase {
    type: 'static-map' | 'static-mapping';
}
