vue-router-layout
Version:
Lightweight layout selector for Vue Router
23 lines (22 loc) • 1.03 kB
TypeScript
import { Component } from 'vue';
declare type Layout = {
name: string;
props: Record<string, unknown>;
};
declare type Optional<Object, Key extends keyof Object> = Omit<Object, Key> & Partial<Pick<Object, Key>>;
declare function install(): void;
export declare function createRouterLayout(resolve: (layoutName: string) => Promise<Component | {
default: Component;
}>): import("vue").DefineComponent<{}, {}, {
layout: Layout | undefined;
layouts: Record<string, Component<any, any, any, import("vue").ComputedOptions, import("vue").MethodOptions>>;
}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, import("vue").EmitsOptions, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<{} & {}>, {}>;
declare const _default: {
install: typeof install;
};
export default _default;
declare module '@vue/runtime-core' {
interface ComponentCustomOptions {
layout?: string | Optional<Layout, 'props'>;
}
}