UNPKG

unleash-server

Version:

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

431 lines (430 loc) • 14.8 kB
import { FeatureToggle, IStrategyConfig, ITag, IVariant } from './model'; import { IApiToken } from './models/api-token'; export declare const APPLICATION_CREATED = "application-created"; export declare const FEATURE_CREATED = "feature-created"; export declare const FEATURE_DELETED = "feature-deleted"; export declare const FEATURE_UPDATED = "feature-updated"; export declare const FEATURE_METADATA_UPDATED = "feature-metadata-updated"; export declare const FEATURE_VARIANTS_UPDATED = "feature-variants-updated"; export declare const FEATURE_ENVIRONMENT_VARIANTS_UPDATED = "feature-environment-variants-updated"; export declare const FEATURE_PROJECT_CHANGE = "feature-project-change"; export declare const FEATURE_ARCHIVED = "feature-archived"; export declare const FEATURE_REVIVED = "feature-revived"; export declare const FEATURE_IMPORT = "feature-import"; export declare const FEATURE_TAGGED = "feature-tagged"; export declare const FEATURE_TAG_IMPORT = "feature-tag-import"; export declare const FEATURE_STRATEGY_UPDATE = "feature-strategy-update"; export declare const FEATURE_STRATEGY_ADD = "feature-strategy-add"; export declare const FEATURE_STRATEGY_REMOVE = "feature-strategy-remove"; export declare const DROP_FEATURE_TAGS = "drop-feature-tags"; export declare const FEATURE_UNTAGGED = "feature-untagged"; export declare const FEATURE_STALE_ON = "feature-stale-on"; export declare const FEATURE_STALE_OFF = "feature-stale-off"; export declare const DROP_FEATURES = "drop-features"; export declare const FEATURE_ENVIRONMENT_ENABLED = "feature-environment-enabled"; export declare const FEATURE_ENVIRONMENT_DISABLED = "feature-environment-disabled"; export declare const STRATEGY_CREATED = "strategy-created"; export declare const STRATEGY_DELETED = "strategy-deleted"; export declare const STRATEGY_DEPRECATED = "strategy-deprecated"; export declare const STRATEGY_REACTIVATED = "strategy-reactivated"; export declare const STRATEGY_UPDATED = "strategy-updated"; export declare const STRATEGY_IMPORT = "strategy-import"; export declare const DROP_STRATEGIES = "drop-strategies"; export declare const CONTEXT_FIELD_CREATED = "context-field-created"; export declare const CONTEXT_FIELD_UPDATED = "context-field-updated"; export declare const CONTEXT_FIELD_DELETED = "context-field-deleted"; export declare const PROJECT_CREATED = "project-created"; export declare const PROJECT_UPDATED = "project-updated"; export declare const PROJECT_DELETED = "project-deleted"; export declare const PROJECT_IMPORT = "project-import"; export declare const PROJECT_USER_ADDED = "project-user-added"; export declare const PROJECT_USER_REMOVED = "project-user-removed"; export declare const PROJECT_USER_ROLE_CHANGED = "project-user-role-changed"; export declare const PROJECT_GROUP_ADDED = "project-group-added"; export declare const PROJECT_GROUP_REMOVED = "project-group-removed"; export declare const PROJECT_GROUP_ROLE_CHANGED = "project-group-role-changed"; export declare const DROP_PROJECTS = "drop-projects"; export declare const TAG_CREATED = "tag-created"; export declare const TAG_DELETED = "tag-deleted"; export declare const TAG_IMPORT = "tag-import"; export declare const DROP_TAGS = "drop-tags"; export declare const TAG_TYPE_CREATED = "tag-type-created"; export declare const TAG_TYPE_DELETED = "tag-type-deleted"; export declare const TAG_TYPE_UPDATED = "tag-type-updated"; export declare const TAG_TYPE_IMPORT = "tag-type-import"; export declare const DROP_TAG_TYPES = "drop-tag-types"; export declare const ADDON_CONFIG_CREATED = "addon-config-created"; export declare const ADDON_CONFIG_UPDATED = "addon-config-updated"; export declare const ADDON_CONFIG_DELETED = "addon-config-deleted"; export declare const DB_POOL_UPDATE = "db-pool-update"; export declare const USER_CREATED = "user-created"; export declare const USER_UPDATED = "user-updated"; export declare const USER_DELETED = "user-deleted"; export declare const DROP_ENVIRONMENTS = "drop-environments"; export declare const ENVIRONMENT_IMPORT = "environment-import"; export declare const SEGMENT_CREATED = "segment-created"; export declare const SEGMENT_UPDATED = "segment-updated"; export declare const SEGMENT_DELETED = "segment-deleted"; export declare const GROUP_CREATED = "group-created"; export declare const GROUP_UPDATED = "group-updated"; export declare const SETTING_CREATED = "setting-created"; export declare const SETTING_UPDATED = "setting-updated"; export declare const SETTING_DELETED = "setting-deleted"; export declare const CLIENT_METRICS = "client-metrics"; export declare const CLIENT_REGISTER = "client-register"; export declare const PAT_CREATED = "pat-created"; export declare const PUBLIC_SIGNUP_TOKEN_CREATED = "public-signup-token-created"; export declare const PUBLIC_SIGNUP_TOKEN_USER_ADDED = "public-signup-token-user-added"; export declare const PUBLIC_SIGNUP_TOKEN_TOKEN_UPDATED = "public-signup-token-updated"; export declare const CHANGE_REQUEST_CREATED = "change-request-created"; export declare const CHANGE_REQUEST_DISCARDED = "change-request-discarded"; export declare const CHANGE_ADDED = "change-added"; export declare const CHANGE_DISCARDED = "change-discarded"; export declare const CHANGE_REQUEST_APPROVED = "change-request-approved"; export declare const CHANGE_REQUEST_APPROVAL_ADDED = "change-request-approval-added"; export declare const CHANGE_REQUEST_CANCELLED = "change-request-cancelled"; export declare const CHANGE_REQUEST_SENT_TO_REVIEW = "change-request-sent-to-review"; export declare const CHANGE_REQUEST_APPLIED = "change-request-applied"; export declare const API_TOKEN_CREATED = "api-token-created"; export declare const API_TOKEN_UPDATED = "api-token-updated"; export declare const API_TOKEN_DELETED = "api-token-deleted"; export declare const FEATURE_FAVORITED = "feature-favorited"; export declare const FEATURE_UNFAVORITED = "feature-unfavorited"; export declare const PROJECT_FAVORITED = "project-favorited"; export declare const PROJECT_UNFAVORITED = "project-unfavorited"; export interface IBaseEvent { type: string; createdBy: string; project?: string; environment?: string; featureName?: string; data?: any; preData?: any; tags?: ITag[]; } export interface IEvent extends IBaseEvent { id: number; createdAt: Date; } export interface IEventList { totalEvents: number; events: IEvent[]; } declare class BaseEvent implements IBaseEvent { readonly type: string; readonly createdBy: string; readonly tags: ITag[]; constructor(type: string, createdBy: string, tags?: ITag[]); } export declare class FeatureStaleEvent extends BaseEvent { readonly project: string; readonly featureName: string; constructor(p: { stale: boolean; project: string; featureName: string; createdBy: string; tags: ITag[]; }); } export declare class FeatureEnvironmentEvent extends BaseEvent { readonly project: string; readonly featureName: string; readonly environment: string; constructor(p: { enabled: boolean; project: string; featureName: string; environment: string; createdBy: string; tags: ITag[]; }); } export declare class FeatureVariantEvent extends BaseEvent { readonly project: string; readonly featureName: string; readonly data: { variants: IVariant[]; }; readonly preData: { variants: IVariant[]; }; constructor(p: { project: string; featureName: string; createdBy: string; tags: ITag[]; newVariants: IVariant[]; oldVariants: IVariant[]; }); } export declare class EnvironmentVariantEvent extends BaseEvent { readonly project: string; readonly environment: string; readonly featureName: string; readonly data: { variants: IVariant[]; }; readonly preData: { variants: IVariant[]; }; constructor(p: { featureName: string; environment: string; project: string; createdBy: string; newVariants: IVariant[]; oldVariants: IVariant[]; }); } export declare class FeatureChangeProjectEvent extends BaseEvent { readonly project: string; readonly featureName: string; readonly data: { oldProject: string; newProject: string; }; constructor(p: { oldProject: string; newProject: string; featureName: string; createdBy: string; tags: ITag[]; }); } export declare class FeatureCreatedEvent extends BaseEvent { readonly project: string; readonly featureName: string; readonly data: FeatureToggle; constructor(p: { project: string; featureName: string; createdBy: string; data: FeatureToggle; tags: ITag[]; }); } export declare class FeatureArchivedEvent extends BaseEvent { readonly project: string; readonly featureName: string; constructor(p: { project: string; featureName: string; createdBy: string; tags: ITag[]; }); } export declare class FeatureRevivedEvent extends BaseEvent { readonly project: string; readonly featureName: string; constructor(p: { project: string; featureName: string; createdBy: string; tags: ITag[]; }); } export declare class FeatureDeletedEvent extends BaseEvent { readonly project: string; readonly featureName: string; readonly preData: FeatureToggle; constructor(p: { project: string; featureName: string; preData: FeatureToggle; createdBy: string; tags: ITag[]; }); } export declare class FeatureMetadataUpdateEvent extends BaseEvent { readonly project: string; readonly featureName: string; readonly data: FeatureToggle; readonly preData: FeatureToggle; constructor(p: { featureName: string; createdBy: string; project: string; data: FeatureToggle; preData: FeatureToggle; tags: ITag[]; }); } export declare class FeatureStrategyAddEvent extends BaseEvent { readonly project: string; readonly featureName: string; readonly environment: string; readonly data: IStrategyConfig; constructor(p: { project: string; featureName: string; environment: string; createdBy: string; data: IStrategyConfig; tags: ITag[]; }); } export declare class FeatureStrategyUpdateEvent extends BaseEvent { readonly project: string; readonly featureName: string; readonly environment: string; readonly data: IStrategyConfig; readonly preData: IStrategyConfig; constructor(p: { project: string; featureName: string; environment: string; createdBy: string; data: IStrategyConfig; preData: IStrategyConfig; tags: ITag[]; }); } export declare class FeatureStrategyRemoveEvent extends BaseEvent { readonly project: string; readonly featureName: string; readonly environment: string; readonly preData: IStrategyConfig; constructor(p: { project: string; featureName: string; environment: string; createdBy: string; preData: IStrategyConfig; tags: ITag[]; }); } export declare class ProjectUserAddedEvent extends BaseEvent { readonly project: string; readonly data: any; readonly preData: any; constructor(p: { project: string; createdBy: string; data: any; }); } export declare class ProjectUserRemovedEvent extends BaseEvent { readonly project: string; readonly data: any; readonly preData: any; constructor(p: { project: string; createdBy: string; preData: any; }); } export declare class ProjectUserUpdateRoleEvent extends BaseEvent { readonly project: string; readonly data: any; readonly preData: any; constructor(eventData: { project: string; createdBy: string; data: any; preData: any; }); } export declare class ProjectGroupAddedEvent extends BaseEvent { readonly project: string; readonly data: any; readonly preData: any; constructor(p: { project: string; createdBy: string; data: any; }); } export declare class ProjectGroupRemovedEvent extends BaseEvent { readonly project: string; readonly data: any; readonly preData: any; constructor(p: { project: string; createdBy: string; preData: any; }); } export declare class ProjectGroupUpdateRoleEvent extends BaseEvent { readonly project: string; readonly data: any; readonly preData: any; constructor(eventData: { project: string; createdBy: string; data: any; preData: any; }); } export declare class SettingCreatedEvent extends BaseEvent { readonly data: any; constructor(eventData: { createdBy: string; data: any; }); } export declare class SettingDeletedEvent extends BaseEvent { readonly data: any; constructor(eventData: { createdBy: string; data: any; }); } export declare class SettingUpdatedEvent extends BaseEvent { readonly data: any; constructor(eventData: { createdBy: string; data: any; }); } export declare class PublicSignupTokenCreatedEvent extends BaseEvent { readonly data: any; constructor(eventData: { createdBy: string; data: any; }); } export declare class PublicSignupTokenUpdatedEvent extends BaseEvent { readonly data: any; constructor(eventData: { createdBy: string; data: any; }); } export declare class PublicSignupTokenUserAddedEvent extends BaseEvent { readonly data: any; constructor(eventData: { createdBy: string; data: any; }); } export declare class ApiTokenCreatedEvent extends BaseEvent { readonly data: any; readonly environment: string; readonly project: string; constructor(eventData: { createdBy: string; apiToken: Omit<IApiToken, 'secret'>; }); } export declare class ApiTokenDeletedEvent extends BaseEvent { readonly preData: any; readonly environment: string; readonly project: string; constructor(eventData: { createdBy: string; apiToken: Omit<IApiToken, 'secret'>; }); } export declare class ApiTokenUpdatedEvent extends BaseEvent { readonly preData: any; readonly data: any; readonly environment: string; readonly project: string; constructor(eventData: { createdBy: string; previousToken: Omit<IApiToken, 'secret'>; apiToken: Omit<IApiToken, 'secret'>; }); } export {};