@zhsz/cool-design-crud
Version:
213 lines (212 loc) • 8.98 kB
TypeScript
import type { PropType } from 'vue';
import ClForm from '../form';
declare const _default: import("vue").DefineComponent<{
/** 表单值 */
data: {
type: ObjectConstructor;
};
/** 表单协议 */
schema: {
type: PropType<ClForm.Schema>;
};
/** 协议表达式作用域 */
scope: PropType<any>;
/** 注册组件列表 */
registerComponents: PropType<{
[key: string]: ClUpsert.Component;
} | undefined>;
/** 副作用逻辑,用于实现各种联动逻辑 */
formEffects: PropType<(form: ClForm.Form) => void>;
/** 表单配置项 */
props: PropType<{
clearable?: boolean | undefined;
labelAlign?: "left" | "right" | undefined;
labelWidth?: string | number | undefined;
span?: number | object | undefined;
labelColProps?: object | undefined;
wrapperColProps?: object | undefined;
hideLabel?: boolean | undefined;
labelColStyle?: object | undefined;
wrapperColStyle?: object | undefined;
rowProps?: object | undefined;
rowClass?: any;
contentClass?: any;
layout?: "vertical" | "horizontal" | "inline" | undefined;
buttonLayout?: "vertical" | "horizontal" | undefined;
pageStyle?: string | {
[key: string]: string;
} | undefined;
pageClass?: string | undefined;
formRow?: {
class?: string | undefined;
style?: string | {
[key: string]: string;
} | undefined;
gutter?: number | ResponsiveValue | [number | ResponsiveValue, number | ResponsiveValue] | undefined;
justify?: "space-around" | "space-between" | "center" | "end" | "start" | undefined;
align?: "stretch" | "center" | "end" | "start" | undefined;
div?: boolean | undefined;
wrap?: boolean | undefined;
} | undefined;
} | undefined>;
/** 操作按钮 */
op: {
type: PropType<(import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
[key: string]: any;
}> | "clear" | "reset" | "search" | undefined)[] | undefined>;
default: () => string[];
};
/** 搜索钩子 */
onSearch: PropType<((data: obj, options: {
next: (params?: obj | undefined) => Promise<{
[key: string]: any;
list: any[];
pagination: ClCrud.Pagination;
}>;
}) => void) | undefined>;
/** 搜索钩子 */
onClear: PropType<((data: any) => void) | undefined>;
/** 搜索钩子 */
onReset: PropType<((data: any) => void) | undefined>;
formRow: {
type: PropType<{
class?: string | undefined;
style?: string | {
[key: string]: string;
} | undefined;
/** 栅格间隔,单位是px 栅格间隔。可传入响应式对象写法 { xs: 4, sm: 6, md: 12},传入数组 [ 水平间距, 垂直间距 ] 来设置两个方向 */
gutter?: number | ResponsiveValue | [number | ResponsiveValue, number | ResponsiveValue] | undefined;
/** 水平对齐方式 (justify-content) */
justify?: "space-around" | "space-between" | "center" | "end" | "start" | undefined;
/** 竖直对齐方式 ( align-items ) */
align?: "stretch" | "center" | "end" | "start" | undefined;
/** 开启这个选项Row和Col都会被当作div而不会附带任何Grid相关的类和样式 */
div?: boolean | undefined;
/** Col 是否支持换行 */
wrap?: boolean | undefined;
}>;
default: () => {
style: string;
gutter: number[];
justify: string;
align: string;
div: boolean;
wrap: boolean;
};
};
}, () => import("vue/jsx-runtime").JSX.Element, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
/** 表单值 */
data: {
type: ObjectConstructor;
};
/** 表单协议 */
schema: {
type: PropType<ClForm.Schema>;
};
/** 协议表达式作用域 */
scope: PropType<any>;
/** 注册组件列表 */
registerComponents: PropType<{
[key: string]: ClUpsert.Component;
} | undefined>;
/** 副作用逻辑,用于实现各种联动逻辑 */
formEffects: PropType<(form: ClForm.Form) => void>;
/** 表单配置项 */
props: PropType<{
clearable?: boolean | undefined;
labelAlign?: "left" | "right" | undefined;
labelWidth?: string | number | undefined;
span?: number | object | undefined;
labelColProps?: object | undefined;
wrapperColProps?: object | undefined;
hideLabel?: boolean | undefined;
labelColStyle?: object | undefined;
wrapperColStyle?: object | undefined;
rowProps?: object | undefined;
rowClass?: any;
contentClass?: any;
layout?: "vertical" | "horizontal" | "inline" | undefined;
buttonLayout?: "vertical" | "horizontal" | undefined;
pageStyle?: string | {
[key: string]: string;
} | undefined;
pageClass?: string | undefined;
formRow?: {
class?: string | undefined;
style?: string | {
[key: string]: string;
} | undefined;
gutter?: number | ResponsiveValue | [number | ResponsiveValue, number | ResponsiveValue] | undefined;
justify?: "space-around" | "space-between" | "center" | "end" | "start" | undefined;
align?: "stretch" | "center" | "end" | "start" | undefined;
div?: boolean | undefined;
wrap?: boolean | undefined;
} | undefined;
} | undefined>;
/** 操作按钮 */
op: {
type: PropType<(import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
[key: string]: any;
}> | "clear" | "reset" | "search" | undefined)[] | undefined>;
default: () => string[];
};
/** 搜索钩子 */
onSearch: PropType<((data: obj, options: {
next: (params?: obj | undefined) => Promise<{
[key: string]: any;
list: any[];
pagination: ClCrud.Pagination;
}>;
}) => void) | undefined>;
/** 搜索钩子 */
onClear: PropType<((data: any) => void) | undefined>;
/** 搜索钩子 */
onReset: PropType<((data: any) => void) | undefined>;
formRow: {
type: PropType<{
class?: string | undefined;
style?: string | {
[key: string]: string;
} | undefined;
/** 栅格间隔,单位是px 栅格间隔。可传入响应式对象写法 { xs: 4, sm: 6, md: 12},传入数组 [ 水平间距, 垂直间距 ] 来设置两个方向 */
gutter?: number | ResponsiveValue | [number | ResponsiveValue, number | ResponsiveValue] | undefined;
/** 水平对齐方式 (justify-content) */
justify?: "space-around" | "space-between" | "center" | "end" | "start" | undefined;
/** 竖直对齐方式 ( align-items ) */
align?: "stretch" | "center" | "end" | "start" | undefined;
/** 开启这个选项Row和Col都会被当作div而不会附带任何Grid相关的类和样式 */
div?: boolean | undefined;
/** Col 是否支持换行 */
wrap?: boolean | undefined;
}>;
default: () => {
style: string;
gutter: number[];
justify: string;
align: string;
div: boolean;
wrap: boolean;
};
};
}>>, {
op: (import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
[key: string]: any;
}> | "clear" | "reset" | "search" | undefined)[] | undefined;
formRow: {
class?: string | undefined;
style?: string | {
[key: string]: string;
} | undefined;
/** 栅格间隔,单位是px 栅格间隔。可传入响应式对象写法 { xs: 4, sm: 6, md: 12},传入数组 [ 水平间距, 垂直间距 ] 来设置两个方向 */
gutter?: number | ResponsiveValue | [number | ResponsiveValue, number | ResponsiveValue] | undefined;
/** 水平对齐方式 (justify-content) */
justify?: "space-around" | "space-between" | "center" | "end" | "start" | undefined;
/** 竖直对齐方式 ( align-items ) */
align?: "stretch" | "center" | "end" | "start" | undefined;
/** 开启这个选项Row和Col都会被当作div而不会附带任何Grid相关的类和样式 */
div?: boolean | undefined;
/** Col 是否支持换行 */
wrap?: boolean | undefined;
};
}, {}>;
export default _default;