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
TypeScript
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 {};