1
0
mirror of https://github.com/Unleash/unleash.git synced 2024-11-01 19:07:38 +01:00
unleash.unleash/frontend/src/interfaces/environments.ts
andreas-unleash f3b11b89bb
Feat: last seen by env UI (#4439)
Implements last seen by environment UI


Closes #
[1-1182](https://linear.app/unleash/issue/1-1182/ui-for-last-seen-per-environment)

![Screenshot 2023-08-08 at 10 30
56](https://github.com/Unleash/unleash/assets/104830839/b70bf63e-8e58-4678-9be4-0fe40c873d29)
![Screenshot 2023-08-08 at 10 31
24](https://github.com/Unleash/unleash/assets/104830839/4ec74030-9425-4254-ad02-b8101e131774)

---------

Signed-off-by: andreas-unleash <andreas@getunleash.ai>
2023-08-08 12:32:33 +03:00

53 lines
1.2 KiB
TypeScript

import { CreateFeatureStrategySchema } from '../openapi';
import { IFeatureStrategy } from './strategy';
export interface IEnvironment {
name: string;
type: string;
createdAt: string;
sortOrder: number;
enabled: boolean;
protected: boolean;
projectCount?: number;
apiTokenCount?: number;
enabledToggleCount?: number;
lastSeenAt: string;
}
export interface IProjectEnvironment extends IEnvironment {
projectVisible?: boolean;
projectApiTokenCount?: number;
projectEnabledToggleCount?: number;
defaultStrategy?: Partial<IFeatureStrategy> | CreateFeatureStrategySchema;
}
export type ProjectEnvironmentType = {
environment: string;
defaultStrategy?: CreateFeatureStrategySchema;
};
export interface IEnvironmentPayload {
name: string;
type: string;
}
export interface IEnvironmentEditPayload {
sortOrder: number;
type: string;
}
export interface IEnvironmentClonePayload {
name: string;
type: string;
projects: string[];
clonePermissions: boolean;
}
export interface IEnvironmentResponse {
environments: IEnvironment[];
}
export interface ISortOrderPayload {
[index: string]: number;
}