@skipruntime/core 0.0.1

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.
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,38 @@
1
+ export type * from "@skiplang/json/internal.js";
2
+ import type { T, CJSON } from "@skiplang/json/internal.js";
3
+ declare const context: unique symbol;
4
+ export type Context = T<typeof context>;
5
+ declare const p: unique symbol;
6
+ declare const lhandle: unique symbol;
7
+ export type LHandle<K extends T<any> = CJSON, V extends T<any> = CJSON> = T<typeof lhandle> & {
8
+ [p]: (_: V) => K;
9
+ };
10
+ declare const nonemptyiterator: unique symbol;
11
+ export type NonEmptyIterator<Ty extends T<any> = CJSON> = T<typeof nonemptyiterator> & {
12
+ [p]: Ty;
13
+ };
14
+ declare const mapper: unique symbol;
15
+ export type Mapper = T<typeof mapper>;
16
+ declare const lazycompute: unique symbol;
17
+ export type LazyCompute = T<typeof lazycompute> & {
18
+ compute: (self: unknown, key: CJSON) => CJSON;
19
+ };
20
+ declare const externalsupplier: unique symbol;
21
+ export type ExternalService = T<typeof externalsupplier>;
22
+ declare const resource: unique symbol;
23
+ export type Resource = T<typeof resource>;
24
+ declare const resourcebuilder: unique symbol;
25
+ export type ResourceBuilder = T<typeof resourcebuilder>;
26
+ declare const service: unique symbol;
27
+ export type Service = T<typeof service>;
28
+ declare const resourcebuildermap: unique symbol;
29
+ export type ResourceBuilderMap = T<typeof resourcebuildermap>;
30
+ declare const externalsuppliermap: unique symbol;
31
+ export type ExternalServiceMap = T<typeof externalsuppliermap>;
32
+ declare const reducer: unique symbol;
33
+ export type Reducer = T<typeof reducer>;
34
+ declare const notifier: unique symbol;
35
+ export type Notifier = T<typeof notifier>;
36
+ declare const request: unique symbol;
37
+ export type Request = T<typeof request>;
38
+ //# sourceMappingURL=internal.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"internal.d.ts","sourceRoot":"","sources":["../src/internal.ts"],"names":[],"mappings":"AAAA,mBAAmB,4BAA4B,CAAC;AAChD,OAAO,KAAK,EAAE,CAAC,EAAE,KAAK,EAAE,MAAM,4BAA4B,CAAC;AAI3D,OAAO,CAAC,MAAM,OAAO,EAAE,OAAO,MAAM,CAAC;AACrC,MAAM,MAAM,OAAO,GAAG,CAAC,CAAC,OAAO,OAAO,CAAC,CAAC;AAExC,OAAO,CAAC,MAAM,CAAC,EAAE,OAAO,MAAM,CAAC;AAE/B,OAAO,CAAC,MAAM,OAAO,EAAE,OAAO,MAAM,CAAC;AACrC,MAAM,MAAM,OAAO,CAAC,CAAC,SAAS,CAAC,CAAC,GAAG,CAAC,GAAG,KAAK,EAAE,CAAC,SAAS,CAAC,CAAC,GAAG,CAAC,GAAG,KAAK,IAAI,CAAC,CACzE,OAAO,OAAO,CACf,GAAG;IAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAA;CAAE,CAAC;AAEzB,OAAO,CAAC,MAAM,gBAAgB,EAAE,OAAO,MAAM,CAAC;AAC9C,MAAM,MAAM,gBAAgB,CAAC,EAAE,SAAS,CAAC,CAAC,GAAG,CAAC,GAAG,KAAK,IAAI,CAAC,CACzD,OAAO,gBAAgB,CACxB,GAAG;IAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAAA;CAAE,CAAC;AAEhB,OAAO,CAAC,MAAM,MAAM,EAAE,OAAO,MAAM,CAAC;AACpC,MAAM,MAAM,MAAM,GAAG,CAAC,CAAC,OAAO,MAAM,CAAC,CAAC;AAEtC,OAAO,CAAC,MAAM,WAAW,EAAE,OAAO,MAAM,CAAC;AACzC,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,OAAO,WAAW,CAAC,GAAG;IAChD,OAAO,EAAE,CAAC,IAAI,EAAE,OAAO,EAAE,GAAG,EAAE,KAAK,KAAK,KAAK,CAAC;CAC/C,CAAC;AAEF,OAAO,CAAC,MAAM,gBAAgB,EAAE,OAAO,MAAM,CAAC;AAC9C,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,OAAO,gBAAgB,CAAC,CAAC;AAEzD,OAAO,CAAC,MAAM,QAAQ,EAAE,OAAO,MAAM,CAAC;AACtC,MAAM,MAAM,QAAQ,GAAG,CAAC,CAAC,OAAO,QAAQ,CAAC,CAAC;AAE1C,OAAO,CAAC,MAAM,eAAe,EAAE,OAAO,MAAM,CAAC;AAC7C,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,OAAO,eAAe,CAAC,CAAC;AAExD,OAAO,CAAC,MAAM,OAAO,EAAE,OAAO,MAAM,CAAC;AACrC,MAAM,MAAM,OAAO,GAAG,CAAC,CAAC,OAAO,OAAO,CAAC,CAAC;AAExC,OAAO,CAAC,MAAM,kBAAkB,EAAE,OAAO,MAAM,CAAC;AAChD,MAAM,MAAM,kBAAkB,GAAG,CAAC,CAAC,OAAO,kBAAkB,CAAC,CAAC;AAE9D,OAAO,CAAC,MAAM,mBAAmB,EAAE,OAAO,MAAM,CAAC;AACjD,MAAM,MAAM,kBAAkB,GAAG,CAAC,CAAC,OAAO,mBAAmB,CAAC,CAAC;AAE/D,OAAO,CAAC,MAAM,OAAO,EAAE,OAAO,MAAM,CAAC;AACrC,MAAM,MAAM,OAAO,GAAG,CAAC,CAAC,OAAO,OAAO,CAAC,CAAC;AAExC,OAAO,CAAC,MAAM,QAAQ,EAAE,OAAO,MAAM,CAAC;AACtC,MAAM,MAAM,QAAQ,GAAG,CAAC,CAAC,OAAO,QAAQ,CAAC,CAAC;AAE1C,OAAO,CAAC,MAAM,OAAO,EAAE,OAAO,MAAM,CAAC;AACrC,MAAM,MAAM,OAAO,GAAG,CAAC,CAAC,OAAO,OAAO,CAAC,CAAC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=internal.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"internal.js","sourceRoot":"","sources":["../src/internal.ts"],"names":[],"mappings":""}
@@ -0,0 +1,22 @@
1
+ import type { Entry, ExternalService, Json } from "@skipruntime/api";
2
+ import type { Entrypoint } from "./index.js";
3
+ export declare class SkipExternalService implements ExternalService {
4
+ private readonly url;
5
+ private readonly control_url;
6
+ private readonly resources;
7
+ constructor(url: string, control_url: string);
8
+ static direct(entrypoint: Entrypoint): SkipExternalService;
9
+ subscribe(resource: string, params: {
10
+ [param: string]: string;
11
+ }, callbacks: {
12
+ update: (updates: Entry<Json, Json>[], isInitial: boolean) => void;
13
+ error: (error: Json) => void;
14
+ loading: () => void;
15
+ }): void;
16
+ unsubscribe(resource: string, params: {
17
+ [param: string]: string;
18
+ }): void;
19
+ shutdown(): void;
20
+ private toId;
21
+ }
22
+ //# sourceMappingURL=remote.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"remote.d.ts","sourceRoot":"","sources":["../src/remote.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,KAAK,EAAE,eAAe,EAAE,IAAI,EAAE,MAAM,kBAAkB,CAAC;AAErE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAM7C,qBAAa,mBAAoB,YAAW,eAAe;IAIvD,OAAO,CAAC,QAAQ,CAAC,GAAG;IACpB,OAAO,CAAC,QAAQ,CAAC,WAAW;IAJ9B,OAAO,CAAC,QAAQ,CAAC,SAAS,CAA+B;gBAGtC,GAAG,EAAE,MAAM,EACX,WAAW,EAAE,MAAM;IAItC,MAAM,CAAC,MAAM,CAAC,UAAU,EAAE,UAAU,GAAG,mBAAmB;IAU1D,SAAS,CACP,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE;QAAE,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAAA;KAAE,EACnC,SAAS,EAAE;QACT,MAAM,EAAE,CAAC,OAAO,EAAE,KAAK,CAAC,IAAI,EAAE,IAAI,CAAC,EAAE,EAAE,SAAS,EAAE,OAAO,KAAK,IAAI,CAAC;QAEnE,KAAK,EAAE,CAAC,KAAK,EAAE,IAAI,KAAK,IAAI,CAAC;QAE7B,OAAO,EAAE,MAAM,IAAI,CAAC;KACrB,GACA,IAAI;IAiCP,WAAW,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE;QAAE,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAAA;KAAE;IAKjE,QAAQ,IAAI,IAAI;IAMhB,OAAO,CAAC,IAAI;CAQb"}
package/dist/remote.js ADDED
@@ -0,0 +1,71 @@
1
+ // TODO: Remove once global `EventSource` makes it out of experimental
2
+ // in nodejs LTS.
3
+ import EventSource from "eventsource";
4
+ export class SkipExternalService {
5
+ constructor(url, control_url) {
6
+ this.url = url;
7
+ this.control_url = control_url;
8
+ this.resources = new Map();
9
+ }
10
+ // TODO: Support Skip external services going through a gateway.
11
+ static direct(entrypoint) {
12
+ let url = `http://${entrypoint.host}:${entrypoint.streaming_port.toString()}`;
13
+ let control_url = `http://${entrypoint.host}:${entrypoint.control_port.toString()}`;
14
+ if (entrypoint.secured) {
15
+ url = `https://${entrypoint.host}:${entrypoint.streaming_port.toString()}`;
16
+ control_url = `https://${entrypoint.host}:${entrypoint.control_port.toString()}`;
17
+ }
18
+ return new SkipExternalService(url, control_url);
19
+ }
20
+ subscribe(resource, params, callbacks) {
21
+ // TODO Manage Status
22
+ fetch(`${this.control_url}/v1/streams`, {
23
+ method: "POST",
24
+ headers: {
25
+ "Content-Type": "application/json",
26
+ },
27
+ body: JSON.stringify({
28
+ resource,
29
+ params,
30
+ }),
31
+ })
32
+ .then((resp) => resp.text())
33
+ .then((uuid) => {
34
+ const evSource = new EventSource(`${this.url}/v1/streams/${uuid}`);
35
+ evSource.addEventListener("init", (e) => {
36
+ const updates = JSON.parse(e.data);
37
+ callbacks.update(updates, true);
38
+ });
39
+ evSource.addEventListener("update", (e) => {
40
+ const updates = JSON.parse(e.data);
41
+ callbacks.update(updates, false);
42
+ });
43
+ evSource.onerror = (e) => {
44
+ console.log(e);
45
+ };
46
+ this.resources.set(this.toId(resource, params), evSource);
47
+ })
48
+ .catch((e) => {
49
+ console.log(e);
50
+ });
51
+ }
52
+ unsubscribe(resource, params) {
53
+ const closable = this.resources.get(this.toId(resource, params));
54
+ if (closable)
55
+ closable.close();
56
+ }
57
+ shutdown() {
58
+ for (const res of this.resources.values()) {
59
+ res.close();
60
+ }
61
+ }
62
+ toId(resource, params) {
63
+ // TODO: This is equivalent to `querystring.encode(params, ',', ':')`.
64
+ const strparams = [];
65
+ for (const key of Object.keys(params).sort()) {
66
+ strparams.push(`${key}:${params[key]}`);
67
+ }
68
+ return `${resource}[${strparams.join(",")}]`;
69
+ }
70
+ }
71
+ //# sourceMappingURL=remote.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"remote.js","sourceRoot":"","sources":["../src/remote.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,22 @@
1
+ import type { Nullable } from "@skip-wasm/std";
2
+ import { ManyToOneMapper } from "@skipruntime/api";
3
+ import type { Reducer, NonEmptyIterator, Json } from "@skipruntime/api";
4
+ export declare class Sum implements Reducer<number, number> {
5
+ default: number;
6
+ add(acc: number, value: number): number;
7
+ remove(acc: number, value: number): Nullable<number>;
8
+ }
9
+ export declare class Min implements Reducer<number, number> {
10
+ default: null;
11
+ add(acc: Nullable<number>, value: number): number;
12
+ remove(acc: number, value: number): Nullable<number>;
13
+ }
14
+ export declare class Max implements Reducer<number, number> {
15
+ default: null;
16
+ add(acc: Nullable<number>, value: number): number;
17
+ remove(acc: number, value: number): Nullable<number>;
18
+ }
19
+ export declare class CountMapper<K extends Json, V extends Json> extends ManyToOneMapper<K, V, number> {
20
+ mapValues(values: NonEmptyIterator<V>): number;
21
+ }
22
+ //# sourceMappingURL=utils.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC/C,OAAO,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AACnD,OAAO,KAAK,EAAE,OAAO,EAAE,gBAAgB,EAAE,IAAI,EAAE,MAAM,kBAAkB,CAAC;AAExE,qBAAa,GAAI,YAAW,OAAO,CAAC,MAAM,EAAE,MAAM,CAAC;IACjD,OAAO,SAAK;IAEZ,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM;IAIvC,MAAM,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,QAAQ,CAAC,MAAM,CAAC;CAGrD;AAED,qBAAa,GAAI,YAAW,OAAO,CAAC,MAAM,EAAE,MAAM,CAAC;IACjD,OAAO,OAAQ;IAEf,GAAG,CAAC,GAAG,EAAE,QAAQ,CAAC,MAAM,CAAC,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM;IAIjD,MAAM,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,QAAQ,CAAC,MAAM,CAAC;CAGrD;AAED,qBAAa,GAAI,YAAW,OAAO,CAAC,MAAM,EAAE,MAAM,CAAC;IACjD,OAAO,OAAQ;IAEf,GAAG,CAAC,GAAG,EAAE,QAAQ,CAAC,MAAM,CAAC,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM;IAIjD,MAAM,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,QAAQ,CAAC,MAAM,CAAC;CAGrD;AAED,qBAAa,WAAW,CACtB,CAAC,SAAS,IAAI,EACd,CAAC,SAAS,IAAI,CACd,SAAQ,eAAe,CAAC,CAAC,EAAE,CAAC,EAAE,MAAM,CAAC;IACrC,SAAS,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAAC,CAAC,GAAG,MAAM;CAG/C"}
package/dist/utils.js ADDED
@@ -0,0 +1,40 @@
1
+ import { ManyToOneMapper } from "@skipruntime/api";
2
+ export class Sum {
3
+ constructor() {
4
+ this.default = 0;
5
+ }
6
+ add(acc, value) {
7
+ return acc + value;
8
+ }
9
+ remove(acc, value) {
10
+ return acc - value;
11
+ }
12
+ }
13
+ export class Min {
14
+ constructor() {
15
+ this.default = null;
16
+ }
17
+ add(acc, value) {
18
+ return acc === null ? value : Math.min(acc, value);
19
+ }
20
+ remove(acc, value) {
21
+ return value > acc ? acc : null;
22
+ }
23
+ }
24
+ export class Max {
25
+ constructor() {
26
+ this.default = null;
27
+ }
28
+ add(acc, value) {
29
+ return acc === null ? value : Math.max(acc, value);
30
+ }
31
+ remove(acc, value) {
32
+ return value < acc ? acc : null;
33
+ }
34
+ }
35
+ export class CountMapper extends ManyToOneMapper {
36
+ mapValues(values) {
37
+ return values.toArray().length;
38
+ }
39
+ }
40
+ //# sourceMappingURL=utils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AAGnD,MAAM,OAAO,GAAG;IAAhB;QACE,YAAO,GAAG,CAAC,CAAC;IASd,CAAC;IAPC,GAAG,CAAC,GAAW,EAAE,KAAa;QAC5B,OAAO,GAAG,GAAG,KAAK,CAAC;IACrB,CAAC;IAED,MAAM,CAAC,GAAW,EAAE,KAAa;QAC/B,OAAO,GAAG,GAAG,KAAK,CAAC;IACrB,CAAC;CACF;AAED,MAAM,OAAO,GAAG;IAAhB;QACE,YAAO,GAAG,IAAI,CAAC;IASjB,CAAC;IAPC,GAAG,CAAC,GAAqB,EAAE,KAAa;QACtC,OAAO,GAAG,KAAK,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;IACrD,CAAC;IAED,MAAM,CAAC,GAAW,EAAE,KAAa;QAC/B,OAAO,KAAK,GAAG,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC;IAClC,CAAC;CACF;AAED,MAAM,OAAO,GAAG;IAAhB;QACE,YAAO,GAAG,IAAI,CAAC;IASjB,CAAC;IAPC,GAAG,CAAC,GAAqB,EAAE,KAAa;QACtC,OAAO,GAAG,KAAK,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;IACrD,CAAC;IAED,MAAM,CAAC,GAAW,EAAE,KAAa;QAC/B,OAAO,KAAK,GAAG,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC;IAClC,CAAC;CACF;AAED,MAAM,OAAO,WAGX,SAAQ,eAA6B;IACrC,SAAS,CAAC,MAA2B;QACnC,OAAO,MAAM,CAAC,OAAO,EAAE,CAAC,MAAM,CAAC;IACjC,CAAC;CACF"}
@@ -0,0 +1,3 @@
1
+ import config from "@skiplabs/eslint-config";
2
+
3
+ export default [...config];
package/package.json ADDED
@@ -0,0 +1,18 @@
1
+ {
2
+ "name": "@skipruntime/core",
3
+ "version": "0.0.1",
4
+ "type": "module",
5
+ "exports": {
6
+ ".": "./dist/index.js",
7
+ "./internal.js": "./dist/internal.js",
8
+ "./binding.js": "./dist/binding.js"
9
+ },
10
+ "scripts": {
11
+ "build": "tsc",
12
+ "clean": "rm -rf dist",
13
+ "lint": "eslint"
14
+ },
15
+ "dependencies": {
16
+ "@skiplang/api": "^0.0.4"
17
+ }
18
+ }
package/src/binding.ts ADDED
@@ -0,0 +1,258 @@
1
+ import type { Pointer, Nullable, Json } from "@skiplang/json";
2
+ import type * as Internal from "./internal.js";
3
+
4
+ import {
5
+ type CollectionUpdate,
6
+ type ExternalService,
7
+ type LazyCompute,
8
+ type Mapper,
9
+ type Reducer,
10
+ type Resource,
11
+ type SkipService,
12
+ } from "@skipruntime/api";
13
+
14
+ export type Handle<T> = Internal.Opaque<number, { handle_for: T }>;
15
+
16
+ export class ResourceBuilder {
17
+ constructor(
18
+ private readonly builder: new (params: {
19
+ [param: string]: string;
20
+ }) => Resource,
21
+ ) {}
22
+
23
+ build(parameters: { [param: string]: string }): Resource {
24
+ const builder = this.builder;
25
+ return new builder(parameters);
26
+ }
27
+ }
28
+
29
+ export type Notifier<K extends Json, V extends Json> = {
30
+ subscribed: () => void;
31
+ notify: (update: CollectionUpdate<K, V>) => void;
32
+ close: () => void;
33
+ };
34
+
35
+ export interface Checker {
36
+ check(request: string): void;
37
+ }
38
+
39
+ export interface FromBinding {
40
+ // NonEmptyIterator
41
+ SkipRuntime_NonEmptyIterator__first(
42
+ values: Pointer<Internal.NonEmptyIterator>,
43
+ ): Pointer<Internal.CJSON>;
44
+ SkipRuntime_NonEmptyIterator__uniqueValue(
45
+ values: Pointer<Internal.NonEmptyIterator>,
46
+ ): Nullable<Pointer<Internal.CJSON>>;
47
+ SkipRuntime_NonEmptyIterator__next(
48
+ values: Pointer<Internal.NonEmptyIterator>,
49
+ ): Nullable<Pointer<Internal.CJSON>>;
50
+ SkipRuntime_NonEmptyIterator__clone(
51
+ values: Pointer<Internal.NonEmptyIterator>,
52
+ ): Pointer<Internal.NonEmptyIterator>;
53
+
54
+ // Mapper
55
+ SkipRuntime_createMapper<
56
+ K1 extends Json,
57
+ V1 extends Json,
58
+ K2 extends Json,
59
+ V2 extends Json,
60
+ >(
61
+ ref: Handle<Mapper<K1, V1, K2, V2>>,
62
+ ): Pointer<Internal.Mapper>;
63
+
64
+ // LazyCompute
65
+
66
+ SkipRuntime_createLazyCompute<K extends Json, V extends Json>(
67
+ ref: Handle<LazyCompute<K, V>>,
68
+ ): Pointer<Internal.LazyCompute>;
69
+
70
+ // ExternalService
71
+
72
+ SkipRuntime_createExternalService(
73
+ ref: Handle<ExternalService>,
74
+ ): Pointer<Internal.ExternalService>;
75
+
76
+ // CollectionWriter
77
+
78
+ SkipRuntime_CollectionWriter__update(
79
+ name: string,
80
+ values: Pointer<Internal.CJArray<Internal.CJArray<Internal.CJSON>>>,
81
+ isInit: boolean,
82
+ ): Handle<Error>;
83
+
84
+ SkipRuntime_CollectionWriter__error(
85
+ name: string,
86
+ error: Pointer<Internal.CJSON>,
87
+ ): Handle<Error>;
88
+
89
+ SkipRuntime_CollectionWriter__loading(name: string): Handle<Error>;
90
+
91
+ // Resource
92
+
93
+ SkipRuntime_createResource(ref: Handle<Resource>): Pointer<Internal.Resource>;
94
+
95
+ // ResourceBuilder
96
+ SkipRuntime_createResourceBuilder(
97
+ ref: Handle<ResourceBuilder>,
98
+ ): Pointer<Internal.ResourceBuilder>;
99
+
100
+ // ResourceBuilder
101
+ SkipRuntime_createService(
102
+ ref: Handle<SkipService>,
103
+ jsInputs: Pointer<Internal.CJObject>,
104
+ resources: Pointer<Internal.ResourceBuilderMap>,
105
+ remotes: Pointer<Internal.ExternalServiceMap>,
106
+ ): Pointer<Internal.Service>;
107
+
108
+ // ResourceBuilderMap
109
+
110
+ SkipRuntime_ResourceBuilderMap__create(): Pointer<Internal.ResourceBuilderMap>;
111
+
112
+ SkipRuntime_ResourceBuilderMap__add(
113
+ map: Pointer<Internal.ResourceBuilderMap>,
114
+ key: string,
115
+ collection: Pointer<Internal.ResourceBuilder>,
116
+ ): void;
117
+
118
+ // ExternalServiceMap
119
+
120
+ SkipRuntime_ExternalServiceMap__create(): Pointer<Internal.ExternalServiceMap>;
121
+ SkipRuntime_ExternalServiceMap__add(
122
+ map: Pointer<Internal.ExternalServiceMap>,
123
+ key: string,
124
+ collection: Pointer<Internal.ExternalService>,
125
+ ): void;
126
+
127
+ // Collection
128
+
129
+ SkipRuntime_Collection__getArray(
130
+ collection: string,
131
+ key: Pointer<Internal.CJSON>,
132
+ ): Pointer<Internal.CJArray<Internal.CJSON>>;
133
+
134
+ SkipRuntime_Collection__getUnique(
135
+ collection: string,
136
+ key: Pointer<Internal.CJSON>,
137
+ ): Nullable<Pointer<Internal.CJSON>>;
138
+
139
+ SkipRuntime_Collection__map(
140
+ collection: string,
141
+ mapper: Pointer<Internal.Mapper>,
142
+ ): string;
143
+
144
+ SkipRuntime_Collection__mapReduce(
145
+ collection: string,
146
+ mapper: Pointer<Internal.Mapper>,
147
+ reducer: Pointer<Internal.Reducer>,
148
+ ): string;
149
+
150
+ SkipRuntime_Collection__reduce(
151
+ collection: string,
152
+ reducer: Pointer<Internal.Reducer>,
153
+ ): string;
154
+
155
+ SkipRuntime_Collection__slice(
156
+ collection: string,
157
+ range: Pointer<Internal.CJArray<Internal.CJArray<Internal.CJSON>>>,
158
+ ): string;
159
+
160
+ SkipRuntime_Collection__take(collection: string, limit: bigint): string;
161
+
162
+ SkipRuntime_Collection__merge(
163
+ collection: string,
164
+ others: Pointer<Internal.CJArray<Internal.CJString>>,
165
+ ): string;
166
+
167
+ SkipRuntime_Collection__size(collection: string): bigint;
168
+
169
+ // LazyCollection
170
+
171
+ SkipRuntime_LazyCollection__getArray(
172
+ collection: string,
173
+ key: Pointer<Internal.CJSON>,
174
+ ): Pointer<Internal.CJArray<Internal.CJSON>>;
175
+
176
+ SkipRuntime_LazyCollection__getUnique(
177
+ collection: string,
178
+ key: Pointer<Internal.CJSON>,
179
+ ): Pointer<Internal.CJSON>;
180
+
181
+ // Notifier
182
+
183
+ SkipRuntime_createNotifier<K extends Json, V extends Json>(
184
+ ref: Handle<Notifier<K, V>>,
185
+ ): Pointer<Internal.Notifier>;
186
+
187
+ // Runtime
188
+
189
+ SkipRuntime_Runtime__createResource(
190
+ identifier: string,
191
+ resource: string,
192
+ jsonParams: Pointer<Internal.CJObject>,
193
+ ): Handle<Error>;
194
+
195
+ SkipRuntime_Runtime__getAll(
196
+ resource: string,
197
+ jsonParams: Pointer<Internal.CJObject>,
198
+ request: Pointer<Internal.Request> | null,
199
+ ): Pointer<Internal.CJObject | Internal.CJFloat>;
200
+
201
+ SkipRuntime_Runtime__getForKey(
202
+ resource: string,
203
+ jsonParams: Pointer<Internal.CJObject>,
204
+ key: Pointer<Internal.CJSON>,
205
+ request: Pointer<Internal.Request> | null,
206
+ ): Pointer<Internal.CJObject | Internal.CJFloat>;
207
+
208
+ SkipRuntime_Runtime__closeResource(identifier: string): Handle<Error>;
209
+
210
+ SkipRuntime_Runtime__subscribe(
211
+ collection: string,
212
+ notifier: Pointer<Internal.Notifier>,
213
+ watermark: Nullable<string>,
214
+ ): bigint;
215
+
216
+ SkipRuntime_Runtime__unsubscribe(id: bigint): Handle<Error>;
217
+
218
+ SkipRuntime_Runtime__update(
219
+ input: string,
220
+ values: Pointer<Internal.CJArray<Internal.CJArray<Internal.CJSON>>>,
221
+ ): Handle<Error>;
222
+
223
+ // Reducer
224
+
225
+ SkipRuntime_createReducer<K1 extends Json, V1 extends Json>(
226
+ ref: Handle<Reducer<K1, V1>>,
227
+ defaultValue: Pointer<Internal.CJSON>,
228
+ ): Pointer<Internal.Reducer>;
229
+
230
+ // initService
231
+ SkipRuntime_initService(service: Pointer<Internal.Service>): Handle<Error>;
232
+
233
+ // closeClose
234
+ SkipRuntime_closeService(): Handle<Error>;
235
+
236
+ // Context
237
+
238
+ SkipRuntime_Context__createLazyCollection(
239
+ compute: Pointer<Internal.LazyCompute>,
240
+ ): string;
241
+
242
+ SkipRuntime_Context__jsonExtract(
243
+ from: Pointer<Internal.CJObject>,
244
+ pattern: string,
245
+ ): Pointer<Internal.CJArray>;
246
+
247
+ SkipRuntime_Context__useExternalResource(
248
+ service: string,
249
+ identifier: string,
250
+ params: Pointer<Internal.CJObject>,
251
+ ): string;
252
+
253
+ // Checker
254
+
255
+ SkipRuntime_createIdentifier(supplier: string): Pointer<Internal.Request>;
256
+
257
+ SkipRuntime_createChecker(ref: Handle<Checker>): Pointer<Internal.Request>;
258
+ }
package/src/errors.ts ADDED
@@ -0,0 +1 @@
1
+ export class UnknownCollectionError extends Error {}