UNPKG

vuestic-ui

Version:
129 lines (128 loc) 3.76 kB
import { ComputedRef, ExtractPropTypes, PropType, Ref } from 'vue'; import { AreaName } from './useGridTemplateArea'; type UnwrapType<T> = true extends boolean ? T : never; export type AreaConfig = UnwrapType<{ absolute?: boolean; order?: number; fixed?: boolean; overlay?: boolean; }>; export declare const useLayoutProps: { top: { type: PropType<{ absolute?: boolean | undefined; order?: number | undefined; fixed?: boolean | undefined; overlay?: boolean | undefined; }>; default: () => { order: number; }; }; right: { type: PropType<{ absolute?: boolean | undefined; order?: number | undefined; fixed?: boolean | undefined; overlay?: boolean | undefined; }>; default: () => { order: number; }; }; left: { type: PropType<{ absolute?: boolean | undefined; order?: number | undefined; fixed?: boolean | undefined; overlay?: boolean | undefined; }>; default: () => { order: number; }; }; bottom: { type: PropType<{ absolute?: boolean | undefined; order?: number | undefined; fixed?: boolean | undefined; overlay?: boolean | undefined; }>; default: () => { order: number; }; }; }; export type LayoutProps = ExtractPropTypes<typeof useLayoutProps>; export declare const useLayout: (props: ExtractPropTypes<typeof useLayoutProps>) => { paddings: ComputedRef<{ top: number; right: number; bottom: number; left: number; }>; orders: ComputedRef<{ top: number; right: number; bottom: number; left: number; }>; items: Ref<{ top: { sizes: { readonly bottom: number; readonly height: number; readonly left: number; readonly right: number; readonly top: number; readonly width: number; readonly x: number; readonly y: number; toJSON: () => any; }; } | null; right: { sizes: { readonly bottom: number; readonly height: number; readonly left: number; readonly right: number; readonly top: number; readonly width: number; readonly x: number; readonly y: number; toJSON: () => any; }; } | null; bottom: { sizes: { readonly bottom: number; readonly height: number; readonly left: number; readonly right: number; readonly top: number; readonly width: number; readonly x: number; readonly y: number; toJSON: () => any; }; } | null; left: { sizes: { readonly bottom: number; readonly height: number; readonly left: number; readonly right: number; readonly top: number; readonly width: number; readonly x: number; readonly y: number; toJSON: () => any; }; } | null; }>; }; export declare const useFixedLayoutChild: (area: AreaName, sizes: Ref<DOMRectReadOnly | null>) => { paddings: ComputedRef<Record<AreaName, number>>; }; export {};