@bitrix24/b24ui-nuxt
Version:
Bitrix24 UI-Kit for developing web applications REST API for NUXT & VUE
88 lines (87 loc) • 2.89 kB
text/typescript
import type { AppConfig } from '@nuxt/schema';
import theme from '#build/b24ui/sidebar-layout';
import type { UseLoadingProps } from '../composables/useLoading';
import type { ComponentConfig } from '../types/tv';
type SidebarLayout = ComponentConfig<typeof theme, AppConfig, 'sidebarLayout'>;
export interface SidebarLayoutProps extends Pick<UseLoadingProps, 'id'> {
/**
* The element or component this component should render as.
* @defaultValue 'div'
*/
as?: any;
/**
* The content is placed on a light background.
* @defaultValue 'true'
*/
useLightContent?: boolean;
/**
* Set inner mode. Use in slider, modal and etc
* @defaultValue 'false'
*/
isInner?: boolean;
/**
* Off scrollbar control of the content area in inner mode.
* @defaultValue 'false'
*/
offContentScrollbar?: boolean;
class?: any;
b24ui?: SidebarLayout['slots'];
}
export interface SidebarLayoutSlots {
/**
* Left sidebar.
* @param props
* @param props.handleClick - Handler for navigation click events
* @param props.isLoading - loading state
* @param props.b24ui - b24ui
*/
'sidebar'(props: {
handleClick: () => void;
isLoading: boolean;
b24ui: SidebarLayout['b24ui'];
}): any;
/** Top menu. */
'navbar'(props: {
handleClick: () => void;
isLoading: boolean;
b24ui: SidebarLayout['b24ui'];
}): any;
/** Content above the page. Used for title, filter, etc. */
'content-top': (props: {
isLoading: boolean;
b24ui: SidebarLayout['b24ui'];
}) => any;
/** Content above the page. Use for show actions. */
'content-actions': (props: {
isLoading: boolean;
b24ui: SidebarLayout['b24ui'];
}) => any;
/** The page content. */
'default'(props: {
isLoading: boolean;
b24ui: SidebarLayout['b24ui'];
}): any;
/** Right sidebar. */
'content-right': (props: {
isLoading: boolean;
b24ui: SidebarLayout['b24ui'];
}) => any;
/** Content below the page. */
'content-bottom': (props: {
isLoading: boolean;
b24ui: SidebarLayout['b24ui'];
}) => any;
/** Loading state. */
'loading': (props: {
isLoading: boolean;
b24ui: SidebarLayout['b24ui'];
}) => any;
}
declare const __VLS_export: __VLS_WithSlots<import("vue").DefineComponent<SidebarLayoutProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<SidebarLayoutProps> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>, SidebarLayoutSlots>;
declare const _default: typeof __VLS_export;
export default _default;
type __VLS_WithSlots<T, S> = T & {
new (): {
$slots: S;
};
};