@infinitetoken/lumber-kit 0.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +60 -0
- package/dist/cjs/constants/index.d.ts +15 -0
- package/dist/cjs/constants/index.d.ts.map +1 -0
- package/dist/cjs/constants/index.js +20 -0
- package/dist/cjs/index.d.ts +3 -0
- package/dist/cjs/index.d.ts.map +1 -0
- package/dist/cjs/index.js +18 -0
- package/dist/cjs/types/index.d.ts +93 -0
- package/dist/cjs/types/index.d.ts.map +1 -0
- package/dist/cjs/types/index.js +2 -0
- package/dist/esm/constants/index.d.ts +15 -0
- package/dist/esm/constants/index.d.ts.map +1 -0
- package/dist/esm/constants/index.js +17 -0
- package/dist/esm/index.d.ts +3 -0
- package/dist/esm/index.d.ts.map +1 -0
- package/dist/esm/index.js +2 -0
- package/dist/esm/package.json +1 -0
- package/dist/esm/types/index.d.ts +93 -0
- package/dist/esm/types/index.d.ts.map +1 -0
- package/dist/esm/types/index.js +1 -0
- package/package.json +43 -0
package/README.md
ADDED
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
# @infinitetoken/lumber-kit
|
|
2
|
+
|
|
3
|
+
Shared TypeScript types, wire format contract, and query interfaces for the [Lumber](https://github.com/infinitetoken/Lumber) cloud logging suite.
|
|
4
|
+
|
|
5
|
+
## Install
|
|
6
|
+
|
|
7
|
+
```
|
|
8
|
+
npm install @infinitetoken/lumber-kit
|
|
9
|
+
```
|
|
10
|
+
|
|
11
|
+
## Usage
|
|
12
|
+
|
|
13
|
+
```typescript
|
|
14
|
+
import { LogLevel, LogRecord, EncryptedPayload, LogQuery } from '@infinitetoken/lumber-kit'
|
|
15
|
+
```
|
|
16
|
+
|
|
17
|
+
## Exports
|
|
18
|
+
|
|
19
|
+
| Export | Kind | Purpose |
|
|
20
|
+
|--------|------|---------|
|
|
21
|
+
| `LogLevel` | `const enum` | Log severity: Debug=0 Info=1 Warn=2 Error=3 Fatal=4 |
|
|
22
|
+
| `SubscriptionLevel` | `const enum` | User tier: Hobby=0 Dev=1 Pro=2 |
|
|
23
|
+
| `LogPayload` | interface | Plaintext fields before encryption |
|
|
24
|
+
| `EncryptedPayload` | interface | Wire format: `{ payload: string, v: number }` |
|
|
25
|
+
| `LogRecord` | interface | API response shape for a stored log |
|
|
26
|
+
| `AppRecord` | interface | API response shape for an app (no encryption_key) |
|
|
27
|
+
| `AppCreatedRecord` | interface | POST /apps 201 response only (includes encryption_key once) |
|
|
28
|
+
| `UserRecord` | interface | API response shape for a user (no password_digest) |
|
|
29
|
+
| `LogQuery` | interface | GET /logs filter params |
|
|
30
|
+
| `AppQuery` | interface | GET /apps filter params |
|
|
31
|
+
|
|
32
|
+
## Wire Format
|
|
33
|
+
|
|
34
|
+
`EncryptedPayload.payload` is `base64(IV[12 bytes] + AuthTag[16 bytes] + ciphertext)`.
|
|
35
|
+
|
|
36
|
+
The `v` field is always `1` for the current wire format. Changes to this format are semver major.
|
|
37
|
+
|
|
38
|
+
## const enum and Babel Consumers
|
|
39
|
+
|
|
40
|
+
`LogLevel` is a TypeScript `const enum`. TypeScript consumers have values inlined at compile time (zero runtime overhead).
|
|
41
|
+
|
|
42
|
+
If your project uses Babel, esbuild, or `isolatedModules: true`, the runtime enum object is available because Lumber-Kit is compiled with `preserveConstEnums: true`. No special configuration is needed in your project.
|
|
43
|
+
|
|
44
|
+
## Local Development (yalc)
|
|
45
|
+
|
|
46
|
+
Do NOT use `npm link` — it creates symlinks that break Metro in the Expo client.
|
|
47
|
+
|
|
48
|
+
```bash
|
|
49
|
+
# In Lumber-Kit:
|
|
50
|
+
npm run build
|
|
51
|
+
yalc publish
|
|
52
|
+
|
|
53
|
+
# In a consumer repo (Lumber-API, Lumber-Node, Lumber Expo client):
|
|
54
|
+
yalc add @infinitetoken/lumber-kit
|
|
55
|
+
npm install
|
|
56
|
+
|
|
57
|
+
# After updating Lumber-Kit:
|
|
58
|
+
npm run build
|
|
59
|
+
yalc push # propagates to all linked consumers
|
|
60
|
+
```
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
/** Log severity level. Numeric values match the existing Lumber-API level field. */
|
|
2
|
+
export declare const enum LogLevel {
|
|
3
|
+
Debug = 0,
|
|
4
|
+
Info = 1,
|
|
5
|
+
Warn = 2,
|
|
6
|
+
Error = 3,
|
|
7
|
+
Fatal = 4
|
|
8
|
+
}
|
|
9
|
+
/** User subscription tier. Mirrors User.subscription_level in Lumber-API. */
|
|
10
|
+
export declare const enum SubscriptionLevel {
|
|
11
|
+
Hobby = 0,
|
|
12
|
+
Dev = 1,
|
|
13
|
+
Pro = 2
|
|
14
|
+
}
|
|
15
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/constants/index.ts"],"names":[],"mappings":"AAEA,oFAAoF;AACpF,0BAAkB,QAAQ;IACxB,KAAK,IAAI;IACT,IAAI,IAAI;IACR,IAAI,IAAI;IACR,KAAK,IAAI;IACT,KAAK,IAAI;CACV;AAED,6EAA6E;AAC7E,0BAAkB,iBAAiB;IACjC,KAAK,IAAI;IACT,GAAG,IAAI;IACP,GAAG,IAAI;CACR"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
// Source: D-01, D-02 (locked decisions — do not change numeric values without a semver major bump)
|
|
3
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
|
+
exports.SubscriptionLevel = exports.LogLevel = void 0;
|
|
5
|
+
/** Log severity level. Numeric values match the existing Lumber-API level field. */
|
|
6
|
+
var LogLevel;
|
|
7
|
+
(function (LogLevel) {
|
|
8
|
+
LogLevel[LogLevel["Debug"] = 0] = "Debug";
|
|
9
|
+
LogLevel[LogLevel["Info"] = 1] = "Info";
|
|
10
|
+
LogLevel[LogLevel["Warn"] = 2] = "Warn";
|
|
11
|
+
LogLevel[LogLevel["Error"] = 3] = "Error";
|
|
12
|
+
LogLevel[LogLevel["Fatal"] = 4] = "Fatal";
|
|
13
|
+
})(LogLevel || (exports.LogLevel = LogLevel = {}));
|
|
14
|
+
/** User subscription tier. Mirrors User.subscription_level in Lumber-API. */
|
|
15
|
+
var SubscriptionLevel;
|
|
16
|
+
(function (SubscriptionLevel) {
|
|
17
|
+
SubscriptionLevel[SubscriptionLevel["Hobby"] = 0] = "Hobby";
|
|
18
|
+
SubscriptionLevel[SubscriptionLevel["Dev"] = 1] = "Dev";
|
|
19
|
+
SubscriptionLevel[SubscriptionLevel["Pro"] = 2] = "Pro";
|
|
20
|
+
})(SubscriptionLevel || (exports.SubscriptionLevel = SubscriptionLevel = {}));
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAA;AAC3B,cAAc,SAAS,CAAA"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
+
};
|
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
__exportStar(require("./constants"), exports);
|
|
18
|
+
__exportStar(require("./types"), exports);
|
|
@@ -0,0 +1,93 @@
|
|
|
1
|
+
import { LogLevel, SubscriptionLevel } from '../constants';
|
|
2
|
+
/**
|
|
3
|
+
* Plaintext log fields before encryption.
|
|
4
|
+
* Lumber-Node and Lumber-Python serialize this object, then encrypt it
|
|
5
|
+
* into EncryptedPayload.payload using AES-256-GCM.
|
|
6
|
+
*/
|
|
7
|
+
export interface LogPayload {
|
|
8
|
+
message?: string;
|
|
9
|
+
code?: string;
|
|
10
|
+
line?: number;
|
|
11
|
+
column?: number;
|
|
12
|
+
method?: string;
|
|
13
|
+
note?: string;
|
|
14
|
+
}
|
|
15
|
+
/**
|
|
16
|
+
* Encrypted wire format.
|
|
17
|
+
* payload = base64(IV[12 bytes] + AuthTag[16 bytes] + ciphertext)
|
|
18
|
+
* v = wire format version — always 1 in v1. Changes here are semver major.
|
|
19
|
+
*/
|
|
20
|
+
export interface EncryptedPayload {
|
|
21
|
+
payload: string;
|
|
22
|
+
v: number;
|
|
23
|
+
}
|
|
24
|
+
/**
|
|
25
|
+
* API response shape for a stored log.
|
|
26
|
+
* payload is the ciphertext — level and flagged are stored unencrypted for server-side filtering.
|
|
27
|
+
* Source: D-06, ENCRYPT-05, ENCRYPT-06
|
|
28
|
+
*/
|
|
29
|
+
export interface LogRecord {
|
|
30
|
+
id: string;
|
|
31
|
+
app_id: string;
|
|
32
|
+
level: LogLevel;
|
|
33
|
+
flagged: boolean;
|
|
34
|
+
payload: string;
|
|
35
|
+
created_at: string;
|
|
36
|
+
updated_at: string;
|
|
37
|
+
}
|
|
38
|
+
/**
|
|
39
|
+
* API response shape for a listed or fetched app.
|
|
40
|
+
* encryption_key is intentionally absent — it is returned once (in AppCreatedRecord) and never again.
|
|
41
|
+
* Source: D-06, ENCRYPT-02, ENCRYPT-03
|
|
42
|
+
*/
|
|
43
|
+
export interface AppRecord {
|
|
44
|
+
id: string;
|
|
45
|
+
user_id: string;
|
|
46
|
+
name: string;
|
|
47
|
+
token: string;
|
|
48
|
+
created_at: string;
|
|
49
|
+
updated_at: string;
|
|
50
|
+
}
|
|
51
|
+
/**
|
|
52
|
+
* App creation response only (POST /apps 201).
|
|
53
|
+
* Includes encryption_key once; subsequent GET /apps and GET /apps/:id responses use AppRecord.
|
|
54
|
+
* Source: D-06, ENCRYPT-02
|
|
55
|
+
*/
|
|
56
|
+
export interface AppCreatedRecord extends AppRecord {
|
|
57
|
+
encryption_key: string;
|
|
58
|
+
}
|
|
59
|
+
/**
|
|
60
|
+
* API response shape for an authenticated user.
|
|
61
|
+
* password_digest is intentionally absent.
|
|
62
|
+
*/
|
|
63
|
+
export interface UserRecord {
|
|
64
|
+
id: string;
|
|
65
|
+
email: string;
|
|
66
|
+
subscription_level: SubscriptionLevel;
|
|
67
|
+
agreed_to_terms: boolean;
|
|
68
|
+
created_at: string;
|
|
69
|
+
updated_at: string;
|
|
70
|
+
}
|
|
71
|
+
/**
|
|
72
|
+
* Filter params for GET /logs.
|
|
73
|
+
* Source: D-06
|
|
74
|
+
*/
|
|
75
|
+
export interface LogQuery {
|
|
76
|
+
level?: LogLevel;
|
|
77
|
+
flagged?: boolean;
|
|
78
|
+
limit?: number;
|
|
79
|
+
offset?: number;
|
|
80
|
+
sort?: string;
|
|
81
|
+
from?: string;
|
|
82
|
+
to?: string;
|
|
83
|
+
}
|
|
84
|
+
/**
|
|
85
|
+
* Filter params for GET /apps.
|
|
86
|
+
* Source: D-06
|
|
87
|
+
*/
|
|
88
|
+
export interface AppQuery {
|
|
89
|
+
limit?: number;
|
|
90
|
+
offset?: number;
|
|
91
|
+
sort?: string;
|
|
92
|
+
}
|
|
93
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/types/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAA;AAE1D;;;;GAIG;AACH,MAAM,WAAW,UAAU;IACzB,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,IAAI,CAAC,EAAE,MAAM,CAAA;CACd;AAED;;;;GAIG;AACH,MAAM,WAAW,gBAAgB;IAC/B,OAAO,EAAE,MAAM,CAAA;IACf,CAAC,EAAE,MAAM,CAAA;CACV;AAED;;;;GAIG;AACH,MAAM,WAAW,SAAS;IACxB,EAAE,EAAE,MAAM,CAAA;IACV,MAAM,EAAE,MAAM,CAAA;IACd,KAAK,EAAE,QAAQ,CAAA;IACf,OAAO,EAAE,OAAO,CAAA;IAChB,OAAO,EAAE,MAAM,CAAA;IACf,UAAU,EAAE,MAAM,CAAA;IAClB,UAAU,EAAE,MAAM,CAAA;CACnB;AAED;;;;GAIG;AACH,MAAM,WAAW,SAAS;IACxB,EAAE,EAAE,MAAM,CAAA;IACV,OAAO,EAAE,MAAM,CAAA;IACf,IAAI,EAAE,MAAM,CAAA;IACZ,KAAK,EAAE,MAAM,CAAA;IACb,UAAU,EAAE,MAAM,CAAA;IAClB,UAAU,EAAE,MAAM,CAAA;CACnB;AAED;;;;GAIG;AACH,MAAM,WAAW,gBAAiB,SAAQ,SAAS;IACjD,cAAc,EAAE,MAAM,CAAA;CACvB;AAED;;;GAGG;AACH,MAAM,WAAW,UAAU;IACzB,EAAE,EAAE,MAAM,CAAA;IACV,KAAK,EAAE,MAAM,CAAA;IACb,kBAAkB,EAAE,iBAAiB,CAAA;IACrC,eAAe,EAAE,OAAO,CAAA;IACxB,UAAU,EAAE,MAAM,CAAA;IAClB,UAAU,EAAE,MAAM,CAAA;CACnB;AAED;;;GAGG;AACH,MAAM,WAAW,QAAQ;IACvB,KAAK,CAAC,EAAE,QAAQ,CAAA;IAChB,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,EAAE,CAAC,EAAE,MAAM,CAAA;CACZ;AAED;;;GAGG;AACH,MAAM,WAAW,QAAQ;IACvB,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,IAAI,CAAC,EAAE,MAAM,CAAA;CACd"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
/** Log severity level. Numeric values match the existing Lumber-API level field. */
|
|
2
|
+
export declare const enum LogLevel {
|
|
3
|
+
Debug = 0,
|
|
4
|
+
Info = 1,
|
|
5
|
+
Warn = 2,
|
|
6
|
+
Error = 3,
|
|
7
|
+
Fatal = 4
|
|
8
|
+
}
|
|
9
|
+
/** User subscription tier. Mirrors User.subscription_level in Lumber-API. */
|
|
10
|
+
export declare const enum SubscriptionLevel {
|
|
11
|
+
Hobby = 0,
|
|
12
|
+
Dev = 1,
|
|
13
|
+
Pro = 2
|
|
14
|
+
}
|
|
15
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/constants/index.ts"],"names":[],"mappings":"AAEA,oFAAoF;AACpF,0BAAkB,QAAQ;IACxB,KAAK,IAAI;IACT,IAAI,IAAI;IACR,IAAI,IAAI;IACR,KAAK,IAAI;IACT,KAAK,IAAI;CACV;AAED,6EAA6E;AAC7E,0BAAkB,iBAAiB;IACjC,KAAK,IAAI;IACT,GAAG,IAAI;IACP,GAAG,IAAI;CACR"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
// Source: D-01, D-02 (locked decisions — do not change numeric values without a semver major bump)
|
|
2
|
+
/** Log severity level. Numeric values match the existing Lumber-API level field. */
|
|
3
|
+
export var LogLevel;
|
|
4
|
+
(function (LogLevel) {
|
|
5
|
+
LogLevel[LogLevel["Debug"] = 0] = "Debug";
|
|
6
|
+
LogLevel[LogLevel["Info"] = 1] = "Info";
|
|
7
|
+
LogLevel[LogLevel["Warn"] = 2] = "Warn";
|
|
8
|
+
LogLevel[LogLevel["Error"] = 3] = "Error";
|
|
9
|
+
LogLevel[LogLevel["Fatal"] = 4] = "Fatal";
|
|
10
|
+
})(LogLevel || (LogLevel = {}));
|
|
11
|
+
/** User subscription tier. Mirrors User.subscription_level in Lumber-API. */
|
|
12
|
+
export var SubscriptionLevel;
|
|
13
|
+
(function (SubscriptionLevel) {
|
|
14
|
+
SubscriptionLevel[SubscriptionLevel["Hobby"] = 0] = "Hobby";
|
|
15
|
+
SubscriptionLevel[SubscriptionLevel["Dev"] = 1] = "Dev";
|
|
16
|
+
SubscriptionLevel[SubscriptionLevel["Pro"] = 2] = "Pro";
|
|
17
|
+
})(SubscriptionLevel || (SubscriptionLevel = {}));
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAA;AAC3B,cAAc,SAAS,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"type": "module"}
|
|
@@ -0,0 +1,93 @@
|
|
|
1
|
+
import { LogLevel, SubscriptionLevel } from '../constants';
|
|
2
|
+
/**
|
|
3
|
+
* Plaintext log fields before encryption.
|
|
4
|
+
* Lumber-Node and Lumber-Python serialize this object, then encrypt it
|
|
5
|
+
* into EncryptedPayload.payload using AES-256-GCM.
|
|
6
|
+
*/
|
|
7
|
+
export interface LogPayload {
|
|
8
|
+
message?: string;
|
|
9
|
+
code?: string;
|
|
10
|
+
line?: number;
|
|
11
|
+
column?: number;
|
|
12
|
+
method?: string;
|
|
13
|
+
note?: string;
|
|
14
|
+
}
|
|
15
|
+
/**
|
|
16
|
+
* Encrypted wire format.
|
|
17
|
+
* payload = base64(IV[12 bytes] + AuthTag[16 bytes] + ciphertext)
|
|
18
|
+
* v = wire format version — always 1 in v1. Changes here are semver major.
|
|
19
|
+
*/
|
|
20
|
+
export interface EncryptedPayload {
|
|
21
|
+
payload: string;
|
|
22
|
+
v: number;
|
|
23
|
+
}
|
|
24
|
+
/**
|
|
25
|
+
* API response shape for a stored log.
|
|
26
|
+
* payload is the ciphertext — level and flagged are stored unencrypted for server-side filtering.
|
|
27
|
+
* Source: D-06, ENCRYPT-05, ENCRYPT-06
|
|
28
|
+
*/
|
|
29
|
+
export interface LogRecord {
|
|
30
|
+
id: string;
|
|
31
|
+
app_id: string;
|
|
32
|
+
level: LogLevel;
|
|
33
|
+
flagged: boolean;
|
|
34
|
+
payload: string;
|
|
35
|
+
created_at: string;
|
|
36
|
+
updated_at: string;
|
|
37
|
+
}
|
|
38
|
+
/**
|
|
39
|
+
* API response shape for a listed or fetched app.
|
|
40
|
+
* encryption_key is intentionally absent — it is returned once (in AppCreatedRecord) and never again.
|
|
41
|
+
* Source: D-06, ENCRYPT-02, ENCRYPT-03
|
|
42
|
+
*/
|
|
43
|
+
export interface AppRecord {
|
|
44
|
+
id: string;
|
|
45
|
+
user_id: string;
|
|
46
|
+
name: string;
|
|
47
|
+
token: string;
|
|
48
|
+
created_at: string;
|
|
49
|
+
updated_at: string;
|
|
50
|
+
}
|
|
51
|
+
/**
|
|
52
|
+
* App creation response only (POST /apps 201).
|
|
53
|
+
* Includes encryption_key once; subsequent GET /apps and GET /apps/:id responses use AppRecord.
|
|
54
|
+
* Source: D-06, ENCRYPT-02
|
|
55
|
+
*/
|
|
56
|
+
export interface AppCreatedRecord extends AppRecord {
|
|
57
|
+
encryption_key: string;
|
|
58
|
+
}
|
|
59
|
+
/**
|
|
60
|
+
* API response shape for an authenticated user.
|
|
61
|
+
* password_digest is intentionally absent.
|
|
62
|
+
*/
|
|
63
|
+
export interface UserRecord {
|
|
64
|
+
id: string;
|
|
65
|
+
email: string;
|
|
66
|
+
subscription_level: SubscriptionLevel;
|
|
67
|
+
agreed_to_terms: boolean;
|
|
68
|
+
created_at: string;
|
|
69
|
+
updated_at: string;
|
|
70
|
+
}
|
|
71
|
+
/**
|
|
72
|
+
* Filter params for GET /logs.
|
|
73
|
+
* Source: D-06
|
|
74
|
+
*/
|
|
75
|
+
export interface LogQuery {
|
|
76
|
+
level?: LogLevel;
|
|
77
|
+
flagged?: boolean;
|
|
78
|
+
limit?: number;
|
|
79
|
+
offset?: number;
|
|
80
|
+
sort?: string;
|
|
81
|
+
from?: string;
|
|
82
|
+
to?: string;
|
|
83
|
+
}
|
|
84
|
+
/**
|
|
85
|
+
* Filter params for GET /apps.
|
|
86
|
+
* Source: D-06
|
|
87
|
+
*/
|
|
88
|
+
export interface AppQuery {
|
|
89
|
+
limit?: number;
|
|
90
|
+
offset?: number;
|
|
91
|
+
sort?: string;
|
|
92
|
+
}
|
|
93
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/types/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAA;AAE1D;;;;GAIG;AACH,MAAM,WAAW,UAAU;IACzB,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,IAAI,CAAC,EAAE,MAAM,CAAA;CACd;AAED;;;;GAIG;AACH,MAAM,WAAW,gBAAgB;IAC/B,OAAO,EAAE,MAAM,CAAA;IACf,CAAC,EAAE,MAAM,CAAA;CACV;AAED;;;;GAIG;AACH,MAAM,WAAW,SAAS;IACxB,EAAE,EAAE,MAAM,CAAA;IACV,MAAM,EAAE,MAAM,CAAA;IACd,KAAK,EAAE,QAAQ,CAAA;IACf,OAAO,EAAE,OAAO,CAAA;IAChB,OAAO,EAAE,MAAM,CAAA;IACf,UAAU,EAAE,MAAM,CAAA;IAClB,UAAU,EAAE,MAAM,CAAA;CACnB;AAED;;;;GAIG;AACH,MAAM,WAAW,SAAS;IACxB,EAAE,EAAE,MAAM,CAAA;IACV,OAAO,EAAE,MAAM,CAAA;IACf,IAAI,EAAE,MAAM,CAAA;IACZ,KAAK,EAAE,MAAM,CAAA;IACb,UAAU,EAAE,MAAM,CAAA;IAClB,UAAU,EAAE,MAAM,CAAA;CACnB;AAED;;;;GAIG;AACH,MAAM,WAAW,gBAAiB,SAAQ,SAAS;IACjD,cAAc,EAAE,MAAM,CAAA;CACvB;AAED;;;GAGG;AACH,MAAM,WAAW,UAAU;IACzB,EAAE,EAAE,MAAM,CAAA;IACV,KAAK,EAAE,MAAM,CAAA;IACb,kBAAkB,EAAE,iBAAiB,CAAA;IACrC,eAAe,EAAE,OAAO,CAAA;IACxB,UAAU,EAAE,MAAM,CAAA;IAClB,UAAU,EAAE,MAAM,CAAA;CACnB;AAED;;;GAGG;AACH,MAAM,WAAW,QAAQ;IACvB,KAAK,CAAC,EAAE,QAAQ,CAAA;IAChB,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,EAAE,CAAC,EAAE,MAAM,CAAA;CACZ;AAED;;;GAGG;AACH,MAAM,WAAW,QAAQ;IACvB,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,IAAI,CAAC,EAAE,MAAM,CAAA;CACd"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
package/package.json
ADDED
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "@infinitetoken/lumber-kit",
|
|
3
|
+
"version": "0.1.0",
|
|
4
|
+
"description": "Shared TypeScript types and wire format contracts for the Lumber cloud logging suite",
|
|
5
|
+
"main": "./dist/cjs/index.js",
|
|
6
|
+
"module": "./dist/esm/index.js",
|
|
7
|
+
"types": "./dist/cjs/index.d.ts",
|
|
8
|
+
"exports": {
|
|
9
|
+
".": {
|
|
10
|
+
"types": "./dist/cjs/index.d.ts",
|
|
11
|
+
"import": "./dist/esm/index.js",
|
|
12
|
+
"require": "./dist/cjs/index.js"
|
|
13
|
+
}
|
|
14
|
+
},
|
|
15
|
+
"files": [
|
|
16
|
+
"dist",
|
|
17
|
+
"README.md"
|
|
18
|
+
],
|
|
19
|
+
"scripts": {
|
|
20
|
+
"build": "npm run build:cjs && npm run build:esm",
|
|
21
|
+
"build:cjs": "tsc -p tsconfig.cjs.json",
|
|
22
|
+
"build:esm": "tsc -p tsconfig.esm.json && echo '{\"type\": \"module\"}' > dist/esm/package.json",
|
|
23
|
+
"clean": "rm -rf dist coverage",
|
|
24
|
+
"test": "jest",
|
|
25
|
+
"lint": "eslint .",
|
|
26
|
+
"fix": "eslint . --fix",
|
|
27
|
+
"prepublishOnly": "npm run build"
|
|
28
|
+
},
|
|
29
|
+
"devDependencies": {
|
|
30
|
+
"@types/jest": "^30.0.0",
|
|
31
|
+
"@types/node": "^25.0.0",
|
|
32
|
+
"@typescript-eslint/eslint-plugin": "^8.59.1",
|
|
33
|
+
"@typescript-eslint/parser": "^8.59.1",
|
|
34
|
+
"eslint": "^10.2.1",
|
|
35
|
+
"eslint-config-prettier": "^10.0.0",
|
|
36
|
+
"eslint-plugin-prettier": "^5.0.0",
|
|
37
|
+
"eslint-plugin-simple-import-sort": "^13.0.0",
|
|
38
|
+
"jest": "^30.3.0",
|
|
39
|
+
"prettier": "^3.8.3",
|
|
40
|
+
"ts-jest": "^29.4.9",
|
|
41
|
+
"typescript": "^6.0.3"
|
|
42
|
+
}
|
|
43
|
+
}
|