@m1cro/server-sdk 0.1.1-beta.2 → 0.1.1-beta.4

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/dist/globals.d.ts CHANGED
@@ -7,7 +7,4 @@ declare global {
7
7
  interface Console extends console.Console {
8
8
  logLevel: LogLevel;
9
9
  }
10
- interface Request {
11
- artifacts?: any;
12
- }
13
10
  }
package/dist/index.d.ts CHANGED
@@ -19,9 +19,9 @@ type Record$1<K extends string | number | symbol = string, V = any> = {
19
19
  [key in K]: V;
20
20
  };
21
21
  type Variant<K extends PropertyKey, T extends object> = {
22
- [P in keyof T]: ({
22
+ [P in keyof T]: {
23
23
  [Q in K]: P;
24
- } & T[P]) extends infer U ? {
24
+ } & T[P] extends infer U ? {
25
25
  [Q in keyof U]: U[Q];
26
26
  } : never;
27
27
  }[keyof T];
@@ -35,50 +35,58 @@ interface AppId {
35
35
  namespace: string;
36
36
  app: string;
37
37
  }
38
- type AppRole = Variant<"type", AppRoleData>;
38
+ type AppRole = Variant<'type', AppRoleData>;
39
39
  type AppRoleData = {
40
40
  provider: {
41
41
  group: string;
42
42
  };
43
43
  test: void;
44
44
  };
45
+ interface Auth {
46
+ subject: Subject;
47
+ permissions: Permissions;
48
+ }
49
+ interface Subject {
50
+ id: string;
51
+ email: string;
52
+ roles: string[];
53
+ }
54
+ interface Permissions {
55
+ [key: string]: string[];
56
+ }
45
57
  interface HookEventMap {
46
- "start": [];
47
- "install": [];
58
+ start: [];
59
+ install: [];
48
60
  }
49
61
 
50
- interface FindQuery<T extends Record$1 = Record$1> {
62
+ interface FindQuery<T extends Record$1 = Record$1> extends PromiseLike<T[]> {
51
63
  limit(limit: number): this;
52
64
  offset(offset: number): this;
53
65
  sort(sort: Sorting): this;
54
- exec(): Promise<T[]>;
55
66
  }
56
- interface FindOneQuery<T extends Record$1 = Record$1> {
67
+ interface FindOneQuery<T extends Record$1 = Record$1> extends PromiseLike<T | undefined> {
57
68
  offset(offset: number): this;
58
69
  sort(sort: Sorting): this;
59
- exec(): Promise<T | undefined>;
60
70
  }
61
71
 
62
72
  type InsertReturnMode = 'insertedIds' | 'documents';
63
73
  type InsertReturnType<T extends Record$1, R extends InsertReturnMode> = R extends 'insertedIds' ? string[] : R extends 'documents' ? T[] : never;
64
- interface InsertQuery<T extends Record$1 = Record$1, R extends InsertReturnMode = 'insertedIds'> {
74
+ interface InsertQuery<T extends Record$1 = Record$1, R extends InsertReturnMode = 'insertedIds'> extends PromiseLike<InsertReturnType<T, R>> {
65
75
  return(mode: 'insertedIds'): InsertQuery<T, 'insertedIds'>;
66
76
  return(mode: 'documents'): InsertQuery<T, 'documents'>;
67
77
  return(mode: InsertReturnMode): InsertQuery<T, typeof mode>;
68
- exec(): Promise<InsertReturnType<T, R>>;
69
78
  }
70
79
  type InsertOneReturnMode = 'insertedId' | 'document';
71
80
  type InsertOneReturnType<T extends Record$1, R extends InsertOneReturnMode> = R extends 'insertedId' ? string : R extends 'document' ? T : never;
72
- interface InsertOneQuery<T extends Record$1 = Record$1, R extends InsertOneReturnMode = 'insertedId'> {
81
+ interface InsertOneQuery<T extends Record$1 = Record$1, R extends InsertOneReturnMode = 'insertedId'> extends PromiseLike<InsertOneReturnType<T, R>> {
73
82
  return(mode: 'insertedId'): InsertOneQuery<T, 'insertedId'>;
74
83
  return(mode: 'document'): InsertOneQuery<T, 'document'>;
75
84
  return(mode: InsertOneReturnMode): InsertOneQuery<T, typeof mode>;
76
- exec(): Promise<InsertOneReturnType<T, R>>;
77
85
  }
78
86
 
79
87
  type UpdateReturnMode = 'affectedRows' | 'oldDocuments' | 'newDocuments';
80
88
  type UpdateReturnType<T, R extends UpdateReturnMode> = R extends 'affectedRows' ? bigint : R extends 'oldDocuments' | 'newDocuments' ? T[] : never;
81
- interface UpdateQuery<T extends Record$1 = Record$1, R extends UpdateReturnMode = 'affectedRows'> {
89
+ interface UpdateQuery<T extends Record$1 = Record$1, R extends UpdateReturnMode = 'affectedRows'> extends PromiseLike<UpdateReturnType<T, R>> {
82
90
  limit(limit: number): this;
83
91
  offset(offset: number): this;
84
92
  sort(sort: Sorting): this;
@@ -86,40 +94,36 @@ interface UpdateQuery<T extends Record$1 = Record$1, R extends UpdateReturnMode
86
94
  return(mode: 'oldDocuments'): UpdateQuery<T, 'oldDocuments'>;
87
95
  return(mode: 'newDocuments'): UpdateQuery<T, 'newDocuments'>;
88
96
  return(mode: UpdateReturnMode): UpdateQuery<T, typeof mode>;
89
- exec(): Promise<UpdateReturnType<T, R>>;
90
97
  }
91
98
  type UpdateOneReturnMode = 'success' | 'oldDocument' | 'newDocument';
92
- type UpdateOneReturnType<T, R extends UpdateOneReturnMode> = R extends 'success' ? boolean : R extends 'oldDocument' | 'newDocument' ? (T | undefined) : never;
93
- interface UpdateOneQuery<T extends Record$1 = Record$1, R extends UpdateOneReturnMode = 'success'> {
99
+ type UpdateOneReturnType<T, R extends UpdateOneReturnMode> = R extends 'success' ? boolean : R extends 'oldDocument' | 'newDocument' ? T | undefined : never;
100
+ interface UpdateOneQuery<T extends Record$1 = Record$1, R extends UpdateOneReturnMode = 'success'> extends PromiseLike<UpdateOneReturnType<T, R>> {
94
101
  offset(offset: number): this;
95
102
  sort(sort: Sorting): this;
96
103
  return(mode: 'success'): UpdateOneQuery<T, 'success'>;
97
104
  return(mode: 'oldDocument'): UpdateOneQuery<T, 'oldDocument'>;
98
105
  return(mode: 'newDocument'): UpdateOneQuery<T, 'newDocument'>;
99
106
  return(mode: UpdateOneReturnMode): UpdateOneQuery<T, typeof mode>;
100
- exec(): Promise<UpdateOneReturnType<T, R>>;
101
107
  }
102
108
 
103
109
  type RemoveReturnMode = 'affectedRows' | 'documents';
104
110
  type RemoveReturnType<T, R extends RemoveReturnMode> = R extends 'affectedRows' ? bigint : R extends 'documents' ? T[] : never;
105
- interface RemoveQuery<T extends Record$1 = Record$1, R extends RemoveReturnMode = 'affectedRows'> {
111
+ interface RemoveQuery<T extends Record$1 = Record$1, R extends RemoveReturnMode = 'affectedRows'> extends PromiseLike<RemoveReturnType<T, R>> {
106
112
  limit(limit: number): this;
107
113
  offset(offset: number): this;
108
114
  sort(sort: Sorting): this;
109
115
  return(mode: 'affectedRows'): RemoveQuery<T, 'affectedRows'>;
110
116
  return(mode: 'documents'): RemoveQuery<T, 'documents'>;
111
117
  return(mode: RemoveReturnMode): RemoveQuery<T, typeof mode>;
112
- exec(): Promise<RemoveReturnType<T, R>>;
113
118
  }
114
119
  type RemoveOneReturnMode = 'success' | 'document';
115
- type RemoveOneReturnType<T, R extends RemoveOneReturnMode> = R extends 'success' ? boolean : R extends 'document' ? (T | undefined) : never;
116
- interface RemoveOneQuery<T extends Record$1 = Record$1, R extends RemoveOneReturnMode = 'success'> {
120
+ type RemoveOneReturnType<T, R extends RemoveOneReturnMode> = R extends 'success' ? boolean : R extends 'document' ? T | undefined : never;
121
+ interface RemoveOneQuery<T extends Record$1 = Record$1, R extends RemoveOneReturnMode = 'success'> extends PromiseLike<RemoveOneReturnType<T, R>> {
117
122
  offset(offset: number): this;
118
123
  sort(sort: Sorting): this;
119
124
  return(mode: 'success'): RemoveOneQuery<T, 'success'>;
120
125
  return(mode: 'document'): RemoveOneQuery<T, 'document'>;
121
126
  return(mode: RemoveOneReturnMode): RemoveOneQuery<T, typeof mode>;
122
- exec(): Promise<RemoveOneReturnType<T, R>>;
123
127
  }
124
128
 
125
129
  interface Entity<T extends object = Record$1<string, unknown>> {
@@ -137,25 +141,6 @@ interface Sorting {
137
141
  [field: string]: 'asc' | 'desc';
138
142
  }
139
143
 
140
- interface SetOptions {
141
- ttl?: number;
142
- existenceCheck?: "nx" | "xx";
143
- }
144
- interface KeyValueStore {
145
- get<T>(key: string): Promise<T>;
146
- getDel<T>(key: string): Promise<T>;
147
- set<T>(key: string, value: T, options?: SetOptions): Promise<void>;
148
- delete(key: string): Promise<void>;
149
- }
150
-
151
- interface Providers {
152
- list(group: string): Provider[];
153
- }
154
- interface Provider {
155
- group: string;
156
- app: AppId;
157
- }
158
-
159
144
  interface Artifacts {
160
145
  get<T>(key: string): T | undefined;
161
146
  set<T>(key: string, value: T): void;
@@ -163,7 +148,72 @@ interface Artifacts {
163
148
  }
164
149
 
165
150
  type Method = 'get' | 'post' | 'put' | 'patch' | 'delete';
151
+ declare enum StatusCode {
152
+ Continue = 100,
153
+ SwitchingProtocols = 101,
154
+ Processing = 102,
155
+ EarlyHints = 103,
156
+ OK = 200,
157
+ Created = 201,
158
+ Accepted = 202,
159
+ NonAuthoritativeInformation = 203,
160
+ NoContent = 204,
161
+ ResetContent = 205,
162
+ PartialContent = 206,
163
+ MultiStatus = 207,
164
+ AlreadyReported = 208,
165
+ IMUsed = 226,
166
+ MultipleChoices = 300,
167
+ MovedPermanently = 301,
168
+ Found = 302,
169
+ SeeOther = 303,
170
+ NotModified = 304,
171
+ UseProxy = 305,
172
+ TemporaryRedirect = 307,
173
+ PermanentRedirect = 308,
174
+ BadRequest = 400,
175
+ Unauthorized = 401,
176
+ PaymentRequired = 402,
177
+ Forbidden = 403,
178
+ NotFound = 404,
179
+ MethodNotAllowed = 405,
180
+ NotAcceptable = 406,
181
+ ProxyAuthenticationRequired = 407,
182
+ RequestTimeout = 408,
183
+ Conflict = 409,
184
+ Gone = 410,
185
+ LengthRequired = 411,
186
+ PreconditionFailed = 412,
187
+ ContentTooLarge = 413,
188
+ URITooLong = 414,
189
+ UnsupportedMediaType = 415,
190
+ RangeNotSatisfiable = 416,
191
+ ExpectationFailed = 417,
192
+ ImATeapot = 418,
193
+ MisdirectedRequest = 421,
194
+ UnprocessableEntity = 422,
195
+ Locked = 423,
196
+ FailedDependency = 424,
197
+ TooEarly = 425,
198
+ UpgradeRequired = 426,
199
+ PreconditionRequired = 428,
200
+ TooManyRequests = 429,
201
+ RequestHeaderFieldsTooLarge = 431,
202
+ UnavailableForLegalReasons = 451,
203
+ InternalServerError = 500,
204
+ NotImplemented = 501,
205
+ BadGateway = 502,
206
+ ServiceUnavailable = 503,
207
+ GatewayTimeout = 504,
208
+ HTTPVersionNotSupported = 505,
209
+ VariantAlsoNegotiates = 506,
210
+ InsufficientStorage = 507,
211
+ LoopDetected = 508,
212
+ NotExtended = 510,
213
+ NetworkAuthenticationRequired = 511
214
+ }
166
215
  type RequestHandler = (this: App, req: Request, res: ResponseBuilder) => void | Promise<void>;
216
+ type Middleware = (this: App, req: Request, res: ResponseBuilder, next: () => Promise<void>) => void | Promise<void>;
167
217
  interface Router {
168
218
  scope(path: string): Router;
169
219
  route(method: Method, path: string, handler: RequestHandler, options?: RouteOptions): Router;
@@ -214,6 +264,25 @@ interface ResponseBuilder {
214
264
  json<T>(json: T): ResponseBuilder;
215
265
  }
216
266
 
267
+ interface SetOptions {
268
+ ttl?: number;
269
+ existenceCheck?: 'nx' | 'xx';
270
+ }
271
+ interface KeyValueStore {
272
+ get<T>(key: string): Promise<T>;
273
+ getDel<T>(key: string): Promise<T>;
274
+ set<T>(key: string, value: T, options?: SetOptions): Promise<void>;
275
+ delete(key: string): Promise<void>;
276
+ }
277
+
278
+ interface Providers {
279
+ list(group: string): Provider[];
280
+ }
281
+ interface Provider {
282
+ group: string;
283
+ app: AppId;
284
+ }
285
+
217
286
  interface RPC {
218
287
  call(url: string, method: Method): Call;
219
288
  get(url: string): Call;
@@ -222,14 +291,19 @@ interface RPC {
222
291
  patch(url: string): Call;
223
292
  delete(url: string): Call;
224
293
  }
225
- interface Call extends RequestBuilder {
226
- send(): Promise<Response>;
294
+ interface Call extends RequestBuilder, PromiseLike<Response> {
227
295
  }
228
296
 
229
297
  interface SSE {
230
298
  push<T>(event: T, targets: string[]): Promise<void>;
231
299
  }
232
300
 
301
+ declare const _default: {
302
+ encode<T>(data: T): Uint8Array;
303
+ decode<T>(data: Uint8Array): T;
304
+ };
305
+
306
+ type EntryPoint = (builder: AppBuilder) => unknown;
233
307
  interface App {
234
308
  get tenant(): Tenant;
235
309
  get providers(): Providers;
@@ -242,13 +316,6 @@ interface App {
242
316
  entity<T extends object>(name: string): Entity<T>;
243
317
  publish<T extends object>(event: string, payload: T, visibility?: Visibility[]): void;
244
318
  }
245
-
246
- declare const _default: {
247
- encode<T>(data: T): Uint8Array;
248
- decode<T>(data: Uint8Array): T;
249
- };
250
-
251
- type EntryPoint = (builder: AppBuilder) => unknown;
252
319
  interface AppBuilder {
253
320
  on<K extends keyof HookEventMap>(type: K, listener: (this: App, ...args: HookEventMap[K]) => unknown): AppBuilder;
254
321
  role(role: AppRole): AppBuilder;
@@ -261,4 +328,4 @@ interface AppBuilder {
261
328
  subscribe(pattern: string, handler: EventHandler): AppBuilder;
262
329
  }
263
330
 
264
- export { type App, type AppBuilder, type Artifacts, type EntryPoint, type Providers, _default as cbor };
331
+ export { type App, type AppBuilder, type AppId, type AppRole, type Artifacts, type Auth, type Entity, type EntryPoint, type Method, type Middleware, type Providers, type Request, type RequestBuilder, type RequestHandler, type Response, type ResponseBuilder, type RouteOptions, type Router, StatusCode, type Tenant, _default as cbor };
package/dist/index.js CHANGED
@@ -1,2 +1,2 @@
1
- import*as e from'cbor2';var p={encode(r){return e.encode(r)},decode(r){return e.decode(r)}};export{p as cbor};//# sourceMappingURL=index.js.map
1
+ import*as r from'cbor2';var p={encode(i){return r.encode(i)},decode(i){return r.decode(i)}};var n=(e=>(e[e.Continue=100]="Continue",e[e.SwitchingProtocols=101]="SwitchingProtocols",e[e.Processing=102]="Processing",e[e.EarlyHints=103]="EarlyHints",e[e.OK=200]="OK",e[e.Created=201]="Created",e[e.Accepted=202]="Accepted",e[e.NonAuthoritativeInformation=203]="NonAuthoritativeInformation",e[e.NoContent=204]="NoContent",e[e.ResetContent=205]="ResetContent",e[e.PartialContent=206]="PartialContent",e[e.MultiStatus=207]="MultiStatus",e[e.AlreadyReported=208]="AlreadyReported",e[e.IMUsed=226]="IMUsed",e[e.MultipleChoices=300]="MultipleChoices",e[e.MovedPermanently=301]="MovedPermanently",e[e.Found=302]="Found",e[e.SeeOther=303]="SeeOther",e[e.NotModified=304]="NotModified",e[e.UseProxy=305]="UseProxy",e[e.TemporaryRedirect=307]="TemporaryRedirect",e[e.PermanentRedirect=308]="PermanentRedirect",e[e.BadRequest=400]="BadRequest",e[e.Unauthorized=401]="Unauthorized",e[e.PaymentRequired=402]="PaymentRequired",e[e.Forbidden=403]="Forbidden",e[e.NotFound=404]="NotFound",e[e.MethodNotAllowed=405]="MethodNotAllowed",e[e.NotAcceptable=406]="NotAcceptable",e[e.ProxyAuthenticationRequired=407]="ProxyAuthenticationRequired",e[e.RequestTimeout=408]="RequestTimeout",e[e.Conflict=409]="Conflict",e[e.Gone=410]="Gone",e[e.LengthRequired=411]="LengthRequired",e[e.PreconditionFailed=412]="PreconditionFailed",e[e.ContentTooLarge=413]="ContentTooLarge",e[e.URITooLong=414]="URITooLong",e[e.UnsupportedMediaType=415]="UnsupportedMediaType",e[e.RangeNotSatisfiable=416]="RangeNotSatisfiable",e[e.ExpectationFailed=417]="ExpectationFailed",e[e.ImATeapot=418]="ImATeapot",e[e.MisdirectedRequest=421]="MisdirectedRequest",e[e.UnprocessableEntity=422]="UnprocessableEntity",e[e.Locked=423]="Locked",e[e.FailedDependency=424]="FailedDependency",e[e.TooEarly=425]="TooEarly",e[e.UpgradeRequired=426]="UpgradeRequired",e[e.PreconditionRequired=428]="PreconditionRequired",e[e.TooManyRequests=429]="TooManyRequests",e[e.RequestHeaderFieldsTooLarge=431]="RequestHeaderFieldsTooLarge",e[e.UnavailableForLegalReasons=451]="UnavailableForLegalReasons",e[e.InternalServerError=500]="InternalServerError",e[e.NotImplemented=501]="NotImplemented",e[e.BadGateway=502]="BadGateway",e[e.ServiceUnavailable=503]="ServiceUnavailable",e[e.GatewayTimeout=504]="GatewayTimeout",e[e.HTTPVersionNotSupported=505]="HTTPVersionNotSupported",e[e.VariantAlsoNegotiates=506]="VariantAlsoNegotiates",e[e.InsufficientStorage=507]="InsufficientStorage",e[e.LoopDetected=508]="LoopDetected",e[e.NotExtended=510]="NotExtended",e[e.NetworkAuthenticationRequired=511]="NetworkAuthenticationRequired",e))(n||{});export{n as StatusCode,p as cbor};//# sourceMappingURL=index.js.map
2
2
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/cbor.ts"],"names":["cbor_default","data"],"mappings":"wBAEA,IAAOA,CAAAA,CAAQ,CACX,MAAA,CAAUC,CAAAA,CAAqB,CAC3B,OAAa,CAAA,CAAA,MAAA,CAAOA,CAAI,CAC5B,CAAA,CACA,OAAUA,CAAAA,CAAqB,CAC3B,OAAa,CAAA,CAAA,MAAA,CAAOA,CAAI,CAC5B,CACJ","file":"index.js","sourcesContent":["import * as cbor2 from \"cbor2\";\n\nexport default {\n encode<T>(data: T): Uint8Array {\n return cbor2.encode(data);\n },\n decode<T>(data: Uint8Array): T {\n return cbor2.decode(data);\n },\n};\n"]}
1
+ {"version":3,"sources":["../src/cbor.ts","../src/http.ts"],"names":["cbor_default","data","StatusCode"],"mappings":"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","file":"index.js","sourcesContent":["import * as cbor2 from 'cbor2';\n\nexport default {\n encode<T>(data: T): Uint8Array {\n return cbor2.encode(data);\n },\n decode<T>(data: Uint8Array): T {\n return cbor2.decode(data);\n },\n};\n","import type { App } from '.';\nimport type { Artifacts } from './artifact';\nimport type * as types from './types';\n\nexport type Method = 'get' | 'post' | 'put' | 'patch' | 'delete';\n\nexport enum StatusCode {\n // 1xx\n Continue = 100,\n SwitchingProtocols = 101,\n Processing = 102,\n EarlyHints = 103,\n\n // 2xx\n OK = 200,\n Created = 201,\n Accepted = 202,\n NonAuthoritativeInformation = 203,\n NoContent = 204,\n ResetContent = 205,\n PartialContent = 206,\n MultiStatus = 207,\n AlreadyReported = 208,\n IMUsed = 226,\n\n // 3xx\n MultipleChoices = 300,\n MovedPermanently = 301,\n Found = 302,\n SeeOther = 303,\n NotModified = 304,\n UseProxy = 305,\n // SwitchProxy = 306, // Deprecated\n TemporaryRedirect = 307,\n PermanentRedirect = 308,\n\n // 4xx\n BadRequest = 400,\n Unauthorized = 401,\n PaymentRequired = 402,\n Forbidden = 403,\n NotFound = 404,\n MethodNotAllowed = 405,\n NotAcceptable = 406,\n ProxyAuthenticationRequired = 407,\n RequestTimeout = 408,\n Conflict = 409,\n Gone = 410,\n LengthRequired = 411,\n PreconditionFailed = 412,\n ContentTooLarge = 413,\n URITooLong = 414,\n UnsupportedMediaType = 415,\n RangeNotSatisfiable = 416,\n ExpectationFailed = 417,\n ImATeapot = 418,\n MisdirectedRequest = 421,\n UnprocessableEntity = 422,\n Locked = 423,\n FailedDependency = 424,\n TooEarly = 425,\n UpgradeRequired = 426,\n PreconditionRequired = 428,\n TooManyRequests = 429,\n RequestHeaderFieldsTooLarge = 431,\n UnavailableForLegalReasons = 451,\n\n // 5xx\n InternalServerError = 500,\n NotImplemented = 501,\n BadGateway = 502,\n ServiceUnavailable = 503,\n GatewayTimeout = 504,\n HTTPVersionNotSupported = 505,\n VariantAlsoNegotiates = 506,\n InsufficientStorage = 507,\n LoopDetected = 508,\n NotExtended = 510,\n NetworkAuthenticationRequired = 511,\n}\n\nexport type RequestHandler = (\n this: App,\n req: Request,\n res: ResponseBuilder\n) => void | Promise<void>;\n\nexport type Middleware = (\n this: App,\n req: Request,\n res: ResponseBuilder,\n next: () => Promise<void>\n) => void | Promise<void>;\n\nexport interface Router {\n scope(path: string): Router;\n\n route(method: Method, path: string, handler: RequestHandler, options?: RouteOptions): Router;\n\n get(path: string, handler: RequestHandler, options?: RouteOptions): Router;\n\n post(path: string, handler: RequestHandler, options?: RouteOptions): Router;\n\n put(path: string, handler: RequestHandler, options?: RouteOptions): Router;\n\n patch(path: string, handler: RequestHandler, options?: RouteOptions): Router;\n\n delete(path: string, handler: RequestHandler, options?: RouteOptions): Router;\n}\n\nexport interface RouteOptions {\n timeoutMs?: number;\n permissions?: string[];\n authenticated?: boolean;\n visibility?: types.Visibility;\n}\n\nexport interface Request {\n get artifacts(): Artifacts;\n get method(): Method;\n get url(): URL;\n get params(): Record<string, string>;\n get headers(): Headers;\n body(): Promise<Uint8Array>;\n text(): Promise<string>;\n json<T>(): Promise<T>;\n}\n\nexport interface RequestBuilder {\n method(method: Method): RequestBuilder;\n url(url: string | URL): RequestBuilder;\n header(name: string, value: string): RequestBuilder;\n headers(headers: HeadersInit): RequestBuilder;\n body(bytes: Uint8Array): RequestBuilder;\n text(text: string): RequestBuilder;\n json<T>(json: T): RequestBuilder;\n}\n\nexport interface Response {\n get status(): number;\n get headers(): Headers;\n body(): Promise<Uint8Array>;\n text(): Promise<string>;\n json<T>(): Promise<T>;\n}\n\nexport interface ResponseBuilder {\n status(status: number): ResponseBuilder;\n header(name: string, value: string): ResponseBuilder;\n headers(headers: HeadersInit): ResponseBuilder;\n body(bytes: Uint8Array): ResponseBuilder;\n text(text: string): ResponseBuilder;\n json<T>(json: T): ResponseBuilder;\n}\n"]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@m1cro/server-sdk",
3
- "version": "0.1.1-beta.2",
3
+ "version": "0.1.1-beta.4",
4
4
  "type": "module",
5
5
  "files": [
6
6
  "dist"
@@ -12,22 +12,6 @@
12
12
  },
13
13
  "./globals": {
14
14
  "types": "./dist/globals.d.ts"
15
- },
16
- "./entity": {
17
- "types": "./dist/entity.d.ts",
18
- "import": "./dist/entity.js"
19
- },
20
- "./http": {
21
- "types": "./dist/http.d.ts",
22
- "import": "./dist/http.js"
23
- },
24
- "./rpc": {
25
- "types": "./dist/rpc.d.ts",
26
- "import": "./dist/rpc.js"
27
- },
28
- "./types": {
29
- "types": "./dist/types.d.ts",
30
- "import": "./dist/types.js"
31
15
  }
32
16
  },
33
17
  "publishConfig": {