@accounter/server
Version:
Accounter GraphQL server
24 lines (23 loc) • 1.11 kB
TypeScript
import { TenantAwareDBClient } from '../../app-providers/tenant-db-client.js';
import { AuthContextProvider } from '../../auth/providers/auth-context.provider.js';
import type { AdminContext, IGetAdminContextsResult, IUpdateAdminContextParams } from '../types.js';
export declare class AdminContextProvider {
private authContextProvider;
private db;
private authContext;
private authContextInitialized;
private cachedContext;
private cachedContextInitializing;
constructor(authContextProvider: AuthContextProvider, db: TenantAwareDBClient);
normalizeContext(rawContext: IGetAdminContextsResult): AdminContext;
getAdminContext(): Promise<AdminContext | null>;
getVerifiedAdminContext(): Promise<AdminContext>;
updateAdminContext(params: IUpdateAdminContextParams): Promise<AdminContext | null>;
getAdminContextByOwnerId(ownerId: string): Promise<AdminContext | null>;
clearCache(): void;
/**
* Lazy initialization of auth context on first use.
* This ensures the async provider is called only when needed.
*/
private ensureAuthContext;
}