import { ComponentMetaspaceScope } from "../../component-types.mjs"; import { IbGibAddr } from "@ibgib/ts-gib/dist/types.mjs"; import { IbGib_V1 } from "@ibgib/ts-gib/dist/V1/types.mjs"; import { MetaspaceService } from "@ibgib/core-gib/dist/witness/space/metaspace/metaspace-types.mjs"; import { IbGibDynamicComponentMetaBase, IbGibDynamicComponentInstanceBase_ParentOfTabs } from "../../ibgib-dynamic-component-bases.mjs"; import { ElementsBase, ChildInfoBase, IbGibDynamicComponentInstance, IbGibDynamicComponentInstanceInitOpts } from "../../component-types.mjs"; import { SettingsType } from "../../../../common/settings/settings-constants.mjs"; import { Settings_IdentityManager } from "../../../../common/settings/settings-types.mjs"; export declare const IDENTITY_MANAGER_COMPONENT_NAME = "ibgib-identity-manager"; /** * Metadata for the Identity Manager component. */ export declare class IdentityManagerComponentMeta extends IbGibDynamicComponentMetaBase { protected lc: string; routeRegExp?: RegExp; componentName: string; constructor(); createInstance({ path, ibGibAddr }: { path: string; ibGibAddr: IbGibAddr; }): Promise; } interface IdentityTabInfo extends ChildInfoBase> { } /** * References to DOM elements within the component's shadow root. */ interface IdentityManagerElements extends ElementsBase { containerEl: HTMLDivElement; titleEl: HTMLHeadingElement; tabsListEl: HTMLDivElement; btnAddIdentityEl: HTMLButtonElement; noIdentityPlaceholderEl: HTMLDivElement; btnCreatePlaceholderEl: HTMLButtonElement; } /** * Concrete implementation of the Identity Manager component. */ export declare class IdentityManagerComponentInstance extends IbGibDynamicComponentInstanceBase_ParentOfTabs implements IbGibDynamicComponentInstance { /** Identity is device-scoped and mode-agnostic: always use the persistent metaspace. */ protected metaspaceScope: ComponentMetaspaceScope; protected lc: string; private globalActiveAddr; private _onIdentityChanged; private _onUiMessage; private keystoneCache; metaspace: MetaspaceService | undefined; protected get settingsType(): SettingsType; constructor(); private getKeystoneDetails; initialize(opts: IbGibDynamicComponentInstanceInitOpts): Promise; created(): Promise; private restoreOrInitTabs; disconnected(): Promise; private loadKeystonesIndex; private initHandlers; protected handleAddNewIdentityFlow(componentPath?: 'ibgib-keystone-creator' | 'ibgib-add-device'): Promise; private resolveActiveIdentity; protected renderUI(): Promise; private loadDefaultPrimaryIdentityTabs; activateIbGib({ ibGibAddr, ibGib }: { ibGibAddr?: IbGibAddr; ibGib?: IbGib_V1; }): Promise; protected getLoadedChildInfo({ addr, ibGib, }: { addr: IbGibAddr; ibGib?: IbGib_V1; }): Promise; protected addChild({ addr, ibGib, }: { ibGib: IbGib_V1; addr?: IbGibAddr; }): Promise; private updateTabTitleAndText; protected removeTabBtn({ tabInfo }: { tabInfo: IdentityTabInfo; }): Promise; } export {}; //# sourceMappingURL=identity-manager.d.mts.map