adminFront/src/model/tariff.ts

78 lines
1.5 KiB
TypeScript
Raw Normal View History

2023-02-25 09:22:54 +00:00
/**
* @deprecated
*/
2023-02-18 14:00:49 +00:00
export type ServiceType =
| "Шаблонизатор документов"
| "Опросник"
| "Сокращатель ссылок"
| "АБ тесты";
2023-02-25 09:22:54 +00:00
/**
* @deprecated
*/
2023-02-18 14:00:49 +00:00
export interface Tariff {
id: number;
name: string;
type: string;
service: ServiceType | "";
disk: number;
time: number;
points: number;
price: number;
}
2023-02-25 09:22:54 +00:00
/**
* @deprecated
*/
2023-02-18 14:00:49 +00:00
export interface ArrayProps {
id: number;
name: string;
type: "package" | "tariff";
service: ServiceType | "";
disk: number;
time: number;
points: number;
price: number;
tariffs?: Array<Tariff>;
}
2023-02-25 12:28:50 +00:00
export const SERVICE_LIST = ["templategen", "squiz", "dwarfener"] as const;
2023-02-25 09:22:54 +00:00
export namespace Tariffs {
2023-02-25 12:28:50 +00:00
export type ServiceType = typeof SERVICE_LIST[number];
export type PrivilegeType =
| "unlim"
| "gencount"
| "activequiz"
| "abcount"
| "extended";
export interface Privilege {
serviceKey: Tariffs.ServiceType;
name: PrivilegeType;
privilegeId: string;
description: string;
type: "day" | "count";
price: number;
}
2023-02-25 09:22:54 +00:00
export interface Tariff {
id: string;
name: string;
service: ServiceType;
type: "day" | "count";
amount: number;
price: number;
}
2023-02-18 14:00:49 +00:00
2023-02-25 09:22:54 +00:00
export interface Package {
id: string;
name: string;
services: ServiceType[];
tariffs: Tariff[];
}
}