UNPKG

unleash-server

Version:

Unleash is an enterprise ready feature flag service. It provides different strategies for handling feature flags.

47 lines 2.4 kB
import type { IUnleashStores } from '../types/stores.js'; import type { IUnleashConfig } from '../types/option.js'; import { type IApiUser } from '../types/api-user.js'; import { type IApiToken, type IApiTokenCreate, type IAuditUser } from '../types/index.js'; import type EventService from '../features/events/event-service.js'; import type { ResourceLimitsService } from '../features/resource-limits/resource-limits-service.js'; export declare class ApiTokenService { private store; private environmentStore; private logger; private activeTokens; private queryAfter; private eventService; private lastSeenSecrets; private flagResolver; private timer; private resourceLimitsService; private eventBus; constructor({ apiTokenStore, environmentStore, }: Pick<IUnleashStores, 'apiTokenStore' | 'environmentStore'>, config: Pick<IUnleashConfig, 'getLogger' | 'authentication' | 'flagResolver' | 'eventBus'>, eventService: EventService, resourceLimitsService: ResourceLimitsService); /** * Called by a scheduler without jitter to refresh all active tokens */ fetchActiveTokens(): Promise<void>; getToken(secret: string): Promise<IApiToken | undefined>; getTokenWithCache(secret: string): Promise<IApiToken | undefined>; updateLastSeen(): Promise<void>; getAllTokens(): Promise<IApiToken[]>; initApiTokens(tokens: IApiTokenCreate[]): Promise<void>; getUserForToken(secret: string): Promise<IApiUser | undefined>; updateExpiry(secret: string, expiresAt: Date, auditUser: IAuditUser): Promise<IApiToken>; delete(secret: string, auditUser: IAuditUser): Promise<void>; /** * @param newToken * @param createdBy should be IApiUser or IUser. Still supports optional or string for backward compatibility * @param createdByUserId still supported for backward compatibility */ createApiTokenWithProjects(newToken: Omit<IApiTokenCreate, 'secret'>, auditUser?: IAuditUser): Promise<IApiToken>; private internalCreateApiTokenWithProjects; private validateApiTokenEnvironment; private validateApiTokenLimit; createMigratedProxyApiToken(newToken: Omit<IApiTokenCreate, 'secret'>): Promise<IApiToken>; private normalizeTokenType; private insertNewApiToken; private findInvalidProject; private generateSecretKey; } //# sourceMappingURL=api-token-service.d.ts.map