UNPKG

unleash-server

Version:

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

37 lines 2.19 kB
import type { IUnleashConfig } from '../../types/option.js'; import type { IUnleashStores } from '../../types/stores.js'; import type { IEventSearchParams } from '../../types/stores/event-store.js'; import type { IApiUser, IUser } from '../../types/index.js'; import type EventEmitter from 'node:events'; import type { IQueryParam } from '../feature-toggle/types/feature-toggle-strategies-store-type.js'; import type { IPrivateProjectChecker } from '../private-project/privateProjectCheckerType.js'; import type { ProjectAccess } from '../private-project/privateProjectStore.js'; import type { IAccessReadModel } from '../access/access-read-model-type.js'; import type { IEventList, IBaseEvent } from '../../events/index.js'; export default class EventService { private logger; private eventStore; private featureTagStore; private accessReadModel; private privateProjectChecker; private eventBus; private isEnterprise; constructor({ eventStore, featureTagStore, }: Pick<IUnleashStores, 'eventStore' | 'featureTagStore'>, { getLogger, eventBus, isEnterprise, }: Pick<IUnleashConfig, 'getLogger' | 'eventBus' | 'isEnterprise'>, privateProjectChecker: IPrivateProjectChecker, accessReadModel: IAccessReadModel); getEvents(): Promise<IEventList>; searchEvents(search: IEventSearchParams, userId: number): Promise<IEventList>; onEvent(eventName: string | symbol, listener: (...args: any[]) => void): EventEmitter; off(eventName: string | symbol, listener: (...args: any[]) => void): EventEmitter; private enhanceEventsWithTags; isAdminToken(user: IUser | IApiUser): boolean; storeEvent(event: IBaseEvent): Promise<void>; storeEvents(events: IBaseEvent[]): Promise<void>; setEventCreatedByUserId(): Promise<void>; convertToDbParams: (params: IEventSearchParams) => IQueryParam[]; getEventCreators(): Promise<{ id: number; name: string; }[]>; getProjectFilterForNonAdmins(userId: number): Promise<IQueryParam[]>; } export declare const filterAccessibleProjects: (projectParam: string | undefined, projectAccess: ProjectAccess) => string | undefined; //# sourceMappingURL=event-service.d.ts.map