@fesjs/fes-design
Version:
fes-design for PC
26 lines (25 loc) • 943 B
TypeScript
import type { CSSProperties, ComponentInternalInstance, ComputedRef, Ref, SetupContext } from 'vue';
import type { DescriptionsItemProps } from './props';
export type LabelAlign = 'center' | 'left' | 'right';
export type LabelPlacement = 'top' | 'left';
export type Size = 'small' | 'middle' | 'large';
export interface DescriptionsItemInst {
id: ComponentInternalInstance['uid'];
index: number;
props: DescriptionsItemProps;
slots: SetupContext['slots'];
}
export interface DescriptionsProvide {
parentProps: ComputedRef<{
column: number;
contentStyle: CSSProperties | string;
labelAlign: LabelAlign;
labelPlacement: LabelPlacement;
labelStyle: CSSProperties | string;
separator: string;
bordered: boolean;
}>;
items: Ref<DescriptionsItemInst[]>;
addItem: (item: DescriptionsItemInst) => void;
removeItem: (id: DescriptionsItemInst['id']) => void;
}