vexip-ui
Version:
A Vue 3 UI library, Highly customizability, full TypeScript, performance pretty good
121 lines (120 loc) • 5.9 kB
TypeScript
import { ExtractPropTypes, PropType } from 'vue';
import { ConfigurableProps } from '@vexip-ui/config';
import { MenuOptions } from '../menu';
import { LayoutConfig, LayoutFooterLink, LayoutHeaderAction, LayoutInnerClass, LayoutMediaJudger, LayoutMenuProps, LayoutSignType, LayoutUser } from './symbol';
export declare const layoutProps: {
inherit: PropType<boolean>;
locale: PropType<Partial<{
signOut: string;
signType: string;
majorColor: string;
themeMode: string;
}>>;
noAside: PropType<boolean>;
footer: PropType<boolean>;
tag: PropType<string>;
menus: PropType<MenuOptions[]>;
menuProps: PropType<LayoutMenuProps>;
logo: PropType<string>;
signName: PropType<string>;
config: PropType<LayoutConfig[]>;
user: PropType<LayoutUser>;
actions: PropType<LayoutHeaderAction[]>;
expanded: PropType<boolean>;
reduced: PropType<boolean>;
avatarCircle: PropType<boolean>;
signType: PropType<"aside" | "header">;
headerFixed: PropType<string | boolean | LayoutMediaJudger>;
asideFixed: PropType<string | boolean | LayoutMediaJudger>;
copyright: PropType<string>;
links: PropType<LayoutFooterLink[]>;
colors: PropType<string[]>;
color: PropType<string>;
miniHeaderSign: PropType<string | boolean | LayoutMediaJudger>;
verticalLinks: PropType<string | boolean | LayoutMediaJudger>;
darkMode: PropType<boolean>;
fixedMain: PropType<boolean>;
fitWindow: PropType<boolean>;
innerClasses: PropType<LayoutInnerClass>;
noHeader: PropType<boolean>;
noMasker: PropType<boolean>;
onExpandedChange: PropType<((expanded: boolean) => void) | ((expanded: boolean) => void)[]>;
onReducedChange: PropType<((reduced: boolean) => void) | ((reduced: boolean) => void)[]>;
onSignClick: PropType<((event: MouseEvent) => void) | ((event: MouseEvent) => void)[]>;
onMenuSelect: PropType<((label: string, meta: any) => void) | ((label: string, meta: any) => void)[]>;
onUserAction: PropType<((label: string, meta: any) => void) | ((label: string, meta: any) => void)[]>;
onNavChange: PropType<((type: LayoutSignType) => void) | ((type: LayoutSignType) => void)[]>;
onColorChange: PropType<((color: string) => void) | ((color: string) => void)[]>;
onToggleTheme: PropType<((isDark: boolean) => void) | ((isDark: boolean) => void)[]>;
onContentResize: PropType<(() => void) | (() => void)[]>;
};
export type LayoutProps = ExtractPropTypes<typeof layoutProps>;
export type LayoutCProps = ConfigurableProps<LayoutProps, 'menus'>;
export declare const layoutAsideProps: {
inherit: PropType<boolean>;
tag: PropType<string>;
expanded: PropType<boolean>;
reduced: PropType<boolean>;
menus: PropType<MenuOptions[]>;
menuProps: PropType<LayoutMenuProps>;
logo: PropType<string>;
signName: PropType<string>;
fixed: PropType<string | boolean>;
signType: PropType<"aside" | "header">;
onExpandedChange: PropType<((expanded: boolean) => void) | ((expanded: boolean) => void)[]>;
onReducedChange: PropType<((reduced: boolean) => void) | ((reduced: boolean) => void)[]>;
onSignClick: PropType<((event: MouseEvent) => void) | ((event: MouseEvent) => void)[]>;
onMenuSelect: PropType<((label: string, meta: any) => void) | ((label: string, meta: any) => void)[]>;
};
export type LayoutAsideProps = ExtractPropTypes<typeof layoutAsideProps>;
export type LayoutAsideCProps = ConfigurableProps<LayoutAsideProps, 'menus'>;
export declare const layoutHeaderProps: {
inherit: PropType<boolean>;
locale: PropType<Partial<{
signOut: string;
signType: string;
majorColor: string;
themeMode: string;
}>>;
tag: PropType<string>;
logo: PropType<string>;
signName: PropType<string>;
user: PropType<LayoutUser>;
userDropped: PropType<boolean>;
avatarCircle: PropType<boolean>;
config: PropType<LayoutConfig[]>;
actions: PropType<LayoutHeaderAction[]>;
signType: PropType<"aside" | "header">;
colors: PropType<string[]>;
color: PropType<string>;
menus: PropType<MenuOptions[]>;
menuProps: PropType<LayoutMenuProps>;
darkMode: PropType<boolean>;
onNavChange: PropType<((type: LayoutSignType) => void) | ((type: LayoutSignType) => void)[]>;
onColorChange: PropType<((color: string) => void) | ((color: string) => void)[]>;
onUserAction: PropType<((label: string, meta: any) => void) | ((label: string, meta: any) => void)[]>;
onSignClick: PropType<((event: MouseEvent) => void) | ((event: MouseEvent) => void)[]>;
onDroppedChange: PropType<((target: boolean) => void) | ((target: boolean) => void)[]>;
onExpandedChange: PropType<((expanded: boolean) => void) | ((expanded: boolean) => void)[]>;
onReducedChange: PropType<((reduced: boolean) => void) | ((reduced: boolean) => void)[]>;
onMenuSelect: PropType<((label: string, meta: any) => void) | ((label: string, meta: any) => void)[]>;
onToggleTheme: PropType<((isDark: boolean) => void) | ((isDark: boolean) => void)[]>;
};
export type LayoutHeaderProps = ExtractPropTypes<typeof layoutHeaderProps>;
export type LayoutHeaderCProps = ConfigurableProps<LayoutHeaderProps, 'user' | 'menus'>;
export declare const layoutMainProps: {
inherit: PropType<boolean>;
tag: PropType<string>;
fixed: PropType<boolean>;
};
export type LayoutMainProps = ExtractPropTypes<typeof layoutMainProps>;
export type LayoutMainCProps = ConfigurableProps<LayoutMainProps>;
export declare const layoutFooterProps: {
inherit: PropType<boolean>;
tag: PropType<string>;
copyright: PropType<string>;
links: PropType<LayoutFooterLink[]>;
verticalLinks: PropType<string | boolean>;
};
export type LayoutFooterProps = ExtractPropTypes<typeof layoutFooterProps>;
export type LayoutFooterCProps = ConfigurableProps<LayoutFooterProps>;