37 lines
947 B
TypeScript
37 lines
947 B
TypeScript
import type { ElementType, ReactNode } from "react";
|
|
|
|
export type AppSidebarItem = {
|
|
id?: string | number;
|
|
title: string;
|
|
mobileTitle?: string;
|
|
icon?: ReactNode | ElementType;
|
|
iconSvg?: string;
|
|
href?: string;
|
|
target?: string;
|
|
rel?: string;
|
|
active?: boolean;
|
|
disabled?: boolean;
|
|
hidden?: boolean;
|
|
onClick?: (item: AppSidebarItem, event: MouseEvent) => void;
|
|
};
|
|
|
|
export type RemoteAppSidebarProps = {
|
|
items?: AppSidebarItem[];
|
|
ariaLabel?: string;
|
|
dir?: "rtl" | "ltr";
|
|
children?: ReactNode;
|
|
};
|
|
|
|
type AppSidebarExitProps = {
|
|
/** @deprecated Exit text is fixed to «خروج» and children are ignored. */
|
|
children?: ReactNode;
|
|
/** @deprecated Exit text is fixed to «خروج» and label is ignored. */
|
|
label?: string;
|
|
disabled?: boolean;
|
|
onClick?: (event: MouseEvent) => void;
|
|
};
|
|
|
|
export declare const AppSidebar: ((props: RemoteAppSidebarProps) => any) & {
|
|
Exit: (props: AppSidebarExitProps) => any;
|
|
};
|