Spaces:
Running
Running
File size: 795 Bytes
b39afbe |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 |
/**
* Copyright (c) 2023 MERCENARIES.AI PTE. LTD.
* All rights reserved.
*/
import { DBObject } from './DBObject';
enum ETierLimitKey {
CREDIT = 'Credit',
CONCURRENT_WORKFLOW = 'Concurrent Workflow'
// TODO: Add limit here
}
enum ETierLimitOp {
MAX = 'Max',
MIN = 'Min',
EQUAL = '=='
}
enum ETierLimitValue {
UNLIMITED = 'Unlimited'
}
interface ITierLimit {
key: ETierLimitKey;
op: ETierLimitOp;
value: string | number;
}
class Tier extends DBObject {
static readonly modelName = 'Tier';
name: string;
limits: ITierLimit[];
constructor(id: string, name: string) {
super(id);
this._id = `${Tier.modelName}:${this.id}`;
this.name = name;
this.limits = [];
}
}
export { Tier, type ITierLimit, ETierLimitKey, ETierLimitValue, ETierLimitOp };
|