import { AuthSession, TAuthUser, TCompany } from '../PyrionNavigationDrawer/pyrionHubTypes'; export type { AuthSession, TAuthUser, TCompany, TUser, } from '../PyrionNavigationDrawer/pyrionHubTypes'; /** @deprecated Usar `AuthSession` */ export type TabSwitchSession = AuthSession; /** @deprecated Usar `TAuthUser` */ export type TabSwitchUser = TAuthUser; /** @deprecated Usar `TCompany` */ export type TabSwitchCompany = TCompany; export interface TabSwitchElement { name: string; description?: string; thumbnail: React.ReactNode | string; className?: string; onClick?: (name: string) => void; disabled?: boolean; id?: string; isLoading?: boolean; } export interface TabsSwitchProps { tabs: TabSwitchElement[]; className?: string; currentTabName?: string; currentSystemId?: string; activeColor?: string; isLoading?: boolean; user?: TAuthUser; sessions?: AuthSession[]; /** Título del usuario activo (resuelto vía accessor en Pyrion). */ userTitle?: string; /** Subtítulo del usuario activo (resuelto vía accessor en Pyrion). */ userSubtitle?: string; /** Título por sesión en "Cambiar cuenta". */ getSessionTitle?: (session: AuthSession) => string; /** Subtítulo por sesión en "Cambiar cuenta". */ getSessionSubtitle?: (session: AuthSession) => string | undefined; /** URL del badge de compañía por sesión en "Cambiar cuenta". Sin retorno: sin badge. */ getSessionCompanyIcon?: (session: AuthSession) => string | undefined; onLogoutClick?: () => void; onSessionClick?: (session: AuthSession) => void; onPreferencesClick?: () => void; onAddAccountClick?: () => void; onProfileClick?: (collapsed: boolean) => void; } declare const TabsSwitch: (props: TabsSwitchProps & { ref?: React.ForwardedRef; }) => React.ReactElement | null; export default TabsSwitch;