unleash-server
Version:
Unleash is an enterprise ready feature toggles service. It provides different strategies for handling feature toggles.
34 lines (33 loc) • 1.62 kB
TypeScript
import { IUnleashStores } from '../types/stores';
import { IUnleashConfig } from '../types/option';
import ApiUser from '../types/api-user';
import { IApiToken, ILegacyApiTokenCreate, IApiTokenCreate } from '../types/models/api-token';
export declare class ApiTokenService {
private store;
private environmentStore;
private logger;
private timer;
private seenTimer;
private activeTokens;
private eventStore;
private lastSeenSecrets;
constructor({ apiTokenStore, environmentStore, eventStore, }: Pick<IUnleashStores, 'apiTokenStore' | 'environmentStore' | 'eventStore'>, config: Pick<IUnleashConfig, 'getLogger' | 'authentication'>);
fetchActiveTokens(): Promise<void>;
updateLastSeen(): Promise<void>;
getAllTokens(): Promise<IApiToken[]>;
getAllActiveTokens(): Promise<IApiToken[]>;
private initApiTokens;
getUserForToken(secret: string): ApiUser | undefined;
updateExpiry(secret: string, expiresAt: Date, updatedBy: string): Promise<IApiToken>;
delete(secret: string, deletedBy: string): Promise<void>;
/**
* @deprecated This may be removed in a future release, prefer createApiTokenWithProjects
*/
createApiToken(newToken: Omit<ILegacyApiTokenCreate, 'secret'>, createdBy?: string): Promise<IApiToken>;
createApiTokenWithProjects(newToken: Omit<IApiTokenCreate, 'secret'>, createdBy?: string): Promise<IApiToken>;
createMigratedProxyApiToken(newToken: Omit<IApiTokenCreate, 'secret'>): Promise<IApiToken>;
private insertNewApiToken;
private findInvalidProject;
private generateSecretKey;
destroy(): void;
}