@veracity/vui
Version:
Veracity UI is a React component library crafted for use within Veracity applications and pages. Based on Styled Components and @xstyled.
36 lines (34 loc) • 1.8 kB
TypeScript
import { RightJoinProps } from "../utils/types.js";
import { AvatarProps } from "../avatar/avatar.types.js";
import { BoxProps } from "../box/box.types.js";
import { PopoverContentProps, PopoverProps, PopoverTriggerProps } from "../popover/popover.types.js";
import { HeaderLinkData } from "./header.types.js";
import { JSX } from "react";
//#region src/header/headerAccount.types.d.ts
/** Defines account link sections and user information. */
type HeaderAccountData = {
sections?: HeaderAccountSectionData[];
userInfo?: HeaderAccountUserInfoData;
};
type HeaderAccountProps = PopoverProps & {
/** Children are disabled for this component. */children?: never; /** Props object passed to the PopoverContent component. */
contentProps?: PopoverContentProps; /** Socket for a set of link sections below user information. */
sections?: HeaderAccountData['sections'] | JSX.Element; /** Props object passed to the PopoverTrigger component. */
triggerProps?: RightJoinProps<PopoverTriggerProps, AvatarProps>; /** Socket for user information on top of the account popover. */
userInfo?: HeaderAccountData['userInfo'] | JSX.Element;
};
/** Defines heading and an array of links within one section. */
type HeaderAccountSectionData = {
heading?: string;
links?: HeaderLinkData[];
};
type HeaderAccountUserInfoData = {
/** Displays company name in account user info section. */companyName?: string; /** Displays user name in account user info section. */
displayName?: string;
isApplication?: boolean;
role?: string;
};
type HeaderAccountUserInfoProps = BoxProps & HeaderAccountUserInfoData;
//#endregion
export { HeaderAccountData, HeaderAccountProps, HeaderAccountSectionData, HeaderAccountUserInfoData, HeaderAccountUserInfoProps };
//# sourceMappingURL=headerAccount.types.d.ts.map