@unicity/design-system
Version:
A comprehensive React component library built on Material-UI with advanced theming capabilities including neumorphism design support
134 lines • 2.66 kB
TypeScript
import React from 'react';
import { AppBarProps as MuiAppBarProps } from '@mui/material';
export interface BreadcrumbItem {
/**
* Breadcrumb label
*/
label: string;
/**
* Navigation path
*/
href?: string;
/**
* Click handler
*/
onClick?: () => void;
/**
* Whether this is the current page
*/
current?: boolean;
}
export interface UserMenuAction {
/**
* Unique identifier
*/
id: string;
/**
* Display label
*/
label: string;
/**
* Icon component
*/
icon?: React.ReactNode;
/**
* Click handler
*/
onClick?: () => void;
/**
* Whether to show divider after this item
*/
divider?: boolean;
/**
* Whether item is disabled
*/
disabled?: boolean;
}
export interface AppBarProps extends Omit<MuiAppBarProps, 'variant' | 'title'> {
/**
* AppBar title
*/
title?: React.ReactNode;
/**
* Subtitle text
*/
subtitle?: string;
/**
* Visual variant
*/
variant?: 'default' | 'dense' | 'prominent';
/**
* Whether to show search functionality
*/
showSearch?: boolean;
/**
* Search placeholder text
*/
searchPlaceholder?: string;
/**
* Search value
*/
searchValue?: string;
/**
* Search change handler
*/
onSearchChange?: (value: string) => void;
/**
* Whether to show menu button
*/
showMenuButton?: boolean;
/**
* Menu button click handler
*/
onMenuClick?: () => void;
/**
* Whether to show back button
*/
showBackButton?: boolean;
/**
* Back button click handler
*/
onBackClick?: () => void;
/**
* User information for profile menu
*/
user?: {
name: string;
email?: string;
avatar?: string;
};
/**
* User menu actions
*/
userMenuActions?: UserMenuAction[];
/**
* Notification count
*/
notificationCount?: number;
/**
* Notification click handler
*/
onNotificationClick?: () => void;
/**
* Breadcrumb items
*/
breadcrumbs?: BreadcrumbItem[];
/**
* Custom actions/buttons
*/
actions?: React.ReactNode[];
/**
* Whether AppBar should be transparent
*/
transparent?: boolean;
/**
* Custom content for the left side
*/
leftContent?: React.ReactNode;
/**
* Custom content for the right side
*/
rightContent?: React.ReactNode;
}
export declare const AppBar: React.FC<AppBarProps>;
//# sourceMappingURL=AppBar.d.ts.map