import { Container, type Focusable } from "@earendil-works/pi-tui"; import type { ModelRuntime } from "../../../core/model-runtime.js"; import type { AuthStatus } from "../../../core/provider-composer.ts"; export type AuthSelectorProvider = { id: string; name: string; authType: "oauth" | "api_key"; subscription?: boolean; }; export declare function formatAuthSelectorProviderType(authType: AuthSelectorProvider["authType"], subscription?: boolean): string; /** * Component that renders an auth provider selector */ export declare class OAuthSelectorComponent extends Container implements Focusable { private searchInput; private _focused; get focused(): boolean; set focused(value: boolean); private listContainer; private allProviders; private filteredProviders; private selectedIndex; private mode; private modelRuntime; private getAuthStatus; private onSelectCallback; private onCancelCallback; constructor(mode: "login" | "logout", modelRuntime: ModelRuntime, providers: AuthSelectorProvider[], onSelect: (providerId: string, authType: AuthSelectorProvider["authType"]) => void, onCancel: () => void, getAuthStatus?: (providerId: string) => AuthStatus, initialSearchInput?: string); private filterProviders; private updateList; private formatStatusIndicator; handleInput(keyData: string): boolean; } //# sourceMappingURL=oauth-selector.d.ts.map