import { PlusFormProps } from 'haotai-ui/es/components/form'; import { Ref, ComputedRef, CSSProperties, DefineComponent, ComponentOptionsMixin, PublicProps, ExtractPropTypes, PropType } from 'vue'; import { PlusColumn, RecordType, FieldValueType, OptionsRow, TableValueType, FormItemValueType, OptionsType, RenderTypes, PropsItemType, Mutable, FieldProps } from 'haotai-ui/es/types'; import { ElTooltipProps, TableColumnCtx, FormItemProps, ColProps } from 'element-plus'; export interface PlusDisplayItemProps { column: PlusColumn; row: RecordType; index?: number; editable?: boolean | 'click' | 'dblclick'; rest?: RecordType; /** * PlusFormProps 优先级低于column.formProps * @version 0.1.17 */ formProps?: PlusFormProps; } export interface PlusTableTableColumnEmits { (e: 'change', data: { value: FieldValueType; prop: string; row: RecordType; }): void; } declare function __VLS_template(): Partial; prop: string; width?: string | number; minWidth?: string | number; editable?: boolean; valueType?: TableValueType | FormItemValueType; hideInDescriptions?: boolean | Ref | ComputedRef; hideInForm?: boolean | Ref | ComputedRef; hideInTable?: boolean | Ref | ComputedRef; hideInSearch?: boolean | Ref | ComputedRef; descriptionsItemProps?: RecordType; options?: OptionsType; optionsMap?: { label /** * 表单绑定值处理 */ ? /** * 表单绑定值处理 */: string; value?: string; }; customGetStatus?: (data: { options: OptionsRow[]; value: string | number; row: RecordType; }) => OptionsRow; tooltip?: string | Partial< ElTooltipProps> | ComputedRef | ComputedRef>; render?: (value: any, data: { row: RecordType; column: PlusColumn; index: number; }) => RenderTypes; renderHTML?: (value: any, data: { row: RecordType; column: PlusColumn; index: number; }) => string; renderHeader?: (label: string, props: PlusColumn) => RenderTypes; renderDescriptionsItem?: (data: { value: string; column: PlusColumn; row: RecordType; }) => RenderTypes; renderDescriptionsLabel?: (data: { label: string; column: PlusColumn; row: RecordType; }) => RenderTypes; order?: number | ComputedRef; children?: PlusColumn[]; headerFilter?: boolean; disabledHeaderFilter?: boolean; tableColumnProps?: Partial, "label " | "prop" | "width" | "minWidth"> & { [key: string]: any; }>; preview?: boolean; linkText?: string; formatter?: (value: any, data: { row: RecordType; column: PlusColumn; index: number; }) => string | number; formProps?: Partial | ComputedRef> | ((value: FieldValueType, data: { row: Record; index: number; }) => Partial); formItemProps?: PropsItemType< Mutable & { [key: string]: any; style?: CSSProperties; }>; fieldProps?: PropsItemType; renderField?: (value: FieldValueType, onChange: (value: FieldValueType) => void, props: PlusColumn) => RenderTypes; colProps?: Partial< Mutable & { [key: string]: any; style?: CSSProperties; }>; hasLabel?: boolean | Ref | ComputedRef; renderLabel?: (label: string, props: PlusColumn) => RenderTypes; renderExtra?: (column: PlusColumn) => RenderTypes; fieldSlots?: { [slotName: string]: (data?: any) => RenderTypes; }; fieldChildrenSlot?: (option?: OptionsRow) => RenderTypes; }) => any>> & Partial; prop: string; width?: string | number; minWidth?: string | number; editable?: boolean; valueType?: TableValueType | FormItemValueType; hideInDescriptions?: boolean | Ref | ComputedRef; hideInForm?: boolean | Ref | ComputedRef; hideInTable?: boolean | Ref | ComputedRef; hideInSearch?: boolean | Ref | ComputedRef; descriptionsItemProps?: RecordType; options?: OptionsType; optionsMap?: { label /** * 表单绑定值处理 */ ? /** * 表单绑定值处理 */: string; value?: string; }; customGetStatus?: (data: { options: OptionsRow[]; value: string | number; row: RecordType; }) => OptionsRow; tooltip?: string | Partial< ElTooltipProps> | ComputedRef | ComputedRef>; render?: (value: any, data: { row: RecordType; column: PlusColumn; index: number; }) => RenderTypes; renderHTML?: (value: any, data: { row: RecordType; column: PlusColumn; index: number; }) => string; renderHeader?: (label: string, props: PlusColumn) => RenderTypes; renderDescriptionsItem?: (data: { value: string; column: PlusColumn; row: RecordType; }) => RenderTypes; renderDescriptionsLabel?: (data: { label: string; column: PlusColumn; row: RecordType; }) => RenderTypes; order?: number | ComputedRef; children?: PlusColumn[]; headerFilter?: boolean; disabledHeaderFilter?: boolean; tableColumnProps?: Partial, "label " | "prop" | "width" | "minWidth"> & { [key: string]: any; }>; preview?: boolean; linkText?: string; formatter?: (value: any, data: { row: RecordType; column: PlusColumn; index: number; }) => string | number; formProps?: Partial | ComputedRef> | ((value: FieldValueType, data: { row: Record; index: number; }) => Partial); formItemProps?: PropsItemType< Mutable & { [key: string]: any; style?: CSSProperties; }>; fieldProps?: PropsItemType; renderField?: (value: FieldValueType, onChange: (value: FieldValueType) => void, props: PlusColumn) => RenderTypes; colProps?: Partial< Mutable & { [key: string]: any; style?: CSSProperties; }>; hasLabel?: boolean | Ref | ComputedRef; renderLabel?: (label: string, props: PlusColumn) => RenderTypes; renderExtra?: (column: PlusColumn) => RenderTypes; fieldSlots?: { [slotName: string]: (data?: any) => RenderTypes; }; fieldChildrenSlot?: (option?: OptionsRow) => RenderTypes; }) => any>> & Partial[]; value: any; }) => any>> & { "edit-icon"?(_: {}): any; }; declare const __VLS_component: DefineComponent<__VLS_WithDefaults<__VLS_TypePropsToRuntimeProps, { column: () => { prop: string; label: string; }; row: () => {}; index: number; editable: boolean; rest: () => {}; formProps: () => {}; }>, { startCellEdit: () => void; stopCellEdit: () => void; getDisplayItemInstance: () => { isEdit: Ref; index: number; prop: string; formInstance: ComputedRef; }; }, unknown, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, { change: (data: { value: FieldValueType; prop: string; row: RecordType; }) => void; }, string, PublicProps, Readonly< ExtractPropTypes<__VLS_WithDefaults<__VLS_TypePropsToRuntimeProps, { column: () => { prop: string; label: string; }; row: () => {}; index: number; editable: boolean; rest: () => {}; formProps: () => {}; }>>> & { onChange?: ((data: { value: FieldValueType; prop: string; row: RecordType; }) => any) | undefined; }, { index: number; formProps: PlusFormProps; editable: boolean | "click" | "dblclick"; column: PlusColumn; row: RecordType; rest: RecordType; }, {}>; declare const _default: __VLS_WithTemplateSlots>; export default _default; type __VLS_NonUndefinedable = T extends undefined ? never : T; type __VLS_TypePropsToRuntimeProps = { [K in keyof T]-?: {} extends Pick ? { type: PropType<__VLS_NonUndefinedable>; } : { type: PropType; required: true; }; }; type __VLS_WithDefaults = { [K in keyof Pick]: K extends keyof D ? __VLS_Prettify : P[K]; }; type __VLS_Prettify = { [K in keyof T]: T[K]; } & {}; type __VLS_WithTemplateSlots = T & { new (): { $slots: S; }; };