/
index.d.ts
59 lines (47 loc) · 1.23 KB
/
index.d.ts
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
50
51
52
53
54
55
56
57
58
59
/** @module Database.Interface */
export interface IDataBaseEntryBase {
key: string
value: string
}
export interface IDataBaseEntryCrypt extends IDataBaseEntryBase {
type: 'crypt'
}
export interface IDataBaseEntryDate extends IDataBaseEntryBase {
type: 'date'
}
export interface IDataBaseEntryArrayAppend extends IDataBaseEntryBase {
type: 'array'
method: 'append'
}
export interface IDataBaseEntryArrayRemove extends IDataBaseEntryBase {
type: 'array'
method: 'remove'
}
export interface IDataBaseEntryArraySet extends IDataBaseEntryBase {
type: 'array'
method: 'set'
index: number
}
export type IDataBaseEntryArray =
| IDataBaseEntryArrayAppend
| IDataBaseEntryArrayRemove
| IDataBaseEntryArraySet
export interface IDataBaseEntryJSONSet extends IDataBaseEntryBase {
type: 'json'
method: 'set'
path: string[]
}
export interface IDataBaseEntryJSONErase extends IDataBaseEntryBase {
type: 'json'
method: 'erase'
path: string[]
}
export type IDataBaseEntryJSON = IDataBaseEntryJSONSet | IDataBaseEntryJSONErase
export type IDataBaseEntry =
| IDataBaseEntryBase
| IDataBaseEntryCrypt
| IDataBaseEntryDate
| IDataBaseEntryArray[IDataBaseEntryJSON]
export interface IDataBaseResponse {
rows: any[]
}