All files / src/classes/annotation/lib props.ts

0% Statements 0/0
0% Branches 0/0
0% Functions 0/0
0% Lines 0/0

Press n or j to go to the next uncovered block, b, p or k for the previous block.

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 45 46 47 48 49                                                                                                 
/* eslint-disable @typescript-eslint/ban-types */
 
/**
 * Column Data Types
 */
type DataType =
  | 'int'
  | 'long'
  | 'float'
  | 'double'
  | 'text'
  | 'string'
  | 'blob'
  | 'boolean'
  | 'json'
  | 'date'
  | 'uuid'
  | 'serial';
 
type EPropertyNames<T> = {
  [K in keyof T]: T[K] extends Function ? never : K;
}[keyof T];
 
/**
 * Constructor parameter interface
 */
type EProperties<T> = Omit<Pick<T, EPropertyNames<T>>, 'e_id'>;
type EPropertiesFull<T> = Partial<T>;
type EPropertiesOpt<T> = Partial<EProperties<T>>;
type EUpDateProperties<T> = Partial<EProperties<T>>;
type SortBy = 'ASC' | 'DESC';
type EOrderBy<T> = {
  key: keyof T;
  order: SortBy;
}[];
type ObjectLike = Object;
 
export type {
  DataType,
  EPropertiesFull,
  EPropertyNames,
  EProperties,
  EPropertiesOpt,
  EUpDateProperties,
  SortBy,
  EOrderBy,
  ObjectLike,
};