unikvs 0.0.2 → 0.0.3
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/LICENSE +21 -0
- package/dist/src/core/_assign-context.d.ts +3 -0
- package/dist/src/core/_assign-context.d.ts.map +1 -0
- package/dist/src/core/_assign-context.js +3 -0
- package/dist/src/core/_combine-signals.d.ts +3 -0
- package/dist/src/core/_combine-signals.d.ts.map +1 -0
- package/dist/src/core/_combine-signals.js +34 -0
- package/dist/src/core/_is-iterable.d.ts +2 -0
- package/dist/src/core/_is-iterable.d.ts.map +1 -0
- package/dist/src/core/_is-iterable.js +3 -0
- package/dist/src/core/_is-plain-object.d.ts +2 -0
- package/dist/src/core/_is-plain-object.d.ts.map +1 -0
- package/dist/src/core/_is-plain-object.js +7 -0
- package/dist/src/core/_logger.d.ts +3 -0
- package/dist/src/core/_logger.d.ts.map +1 -0
- package/dist/src/core/_logger.js +3 -0
- package/dist/src/core/_merge-context.d.ts +3 -0
- package/dist/src/core/_merge-context.d.ts.map +1 -0
- package/dist/src/core/_merge-context.js +4 -0
- package/dist/src/core/_to-context.d.ts +7 -0
- package/dist/src/core/_to-context.d.ts.map +1 -0
- package/dist/src/core/_to-context.js +42 -0
- package/dist/src/core/_to-value-stream.d.ts +4 -0
- package/dist/src/core/_to-value-stream.d.ts.map +1 -0
- package/dist/src/core/_to-value-stream.js +38 -0
- package/dist/src/core/_with-readable-stream-from.d.ts +6 -0
- package/dist/src/core/_with-readable-stream-from.d.ts.map +1 -0
- package/dist/src/core/_with-readable-stream-from.js +58 -0
- package/dist/src/core/context.types.d.ts +5 -0
- package/dist/src/core/context.types.d.ts.map +1 -0
- package/dist/src/core/context.types.js +1 -0
- package/dist/src/core/errors.d.ts +13 -0
- package/dist/src/core/errors.d.ts.map +1 -0
- package/dist/src/core/errors.js +20 -0
- package/dist/src/core/index.d.ts +15 -0
- package/dist/src/core/index.d.ts.map +1 -0
- package/dist/src/core/index.js +4 -0
- package/dist/src/core/plugin.types.d.ts +8 -0
- package/dist/src/core/plugin.types.d.ts.map +1 -0
- package/dist/src/core/plugin.types.js +1 -0
- package/dist/src/core/storage.types.d.ts +22 -0
- package/dist/src/core/storage.types.d.ts.map +1 -0
- package/dist/src/core/storage.types.js +1 -0
- package/dist/src/core/to-readable-stream.d.ts +2 -0
- package/dist/src/core/to-readable-stream.d.ts.map +1 -0
- package/dist/src/core/to-readable-stream.js +4 -0
- package/dist/src/core/transformer.types.d.ts +18 -0
- package/dist/src/core/transformer.types.d.ts.map +1 -0
- package/dist/src/core/transformer.types.js +1 -0
- package/dist/src/core/unikvs-config.d.ts +82 -0
- package/dist/src/core/unikvs-config.d.ts.map +1 -0
- package/dist/src/core/unikvs-config.js +49 -0
- package/dist/src/core/unikvs.d.ts +73 -0
- package/dist/src/core/unikvs.d.ts.map +1 -0
- package/dist/src/core/unikvs.js +678 -0
- package/dist/src/core/utils.types.d.ts +3 -0
- package/dist/src/core/utils.types.d.ts.map +1 -0
- package/dist/src/core/utils.types.js +1 -0
- package/dist/src/core/value-stream.types.d.ts +4 -0
- package/dist/src/core/value-stream.types.d.ts.map +1 -0
- package/dist/src/core/value-stream.types.js +1 -0
- package/dist/src/destinations/memory-storage.d.ts +17 -0
- package/dist/src/destinations/memory-storage.d.ts.map +1 -0
- package/dist/src/destinations/memory-storage.js +113 -0
- package/dist/src/types/storage.d.ts +5 -0
- package/dist/src/types/storage.d.ts.map +1 -0
- package/dist/src/types/storage.js +1 -0
- package/dist/src/types/transformer.d.ts +5 -0
- package/dist/src/types/transformer.d.ts.map +1 -0
- package/dist/src/types/transformer.js +1 -0
- package/package.json +69 -6
- package/src/core/_assign-context.ts +5 -0
- package/src/core/_combine-signals.ts +40 -0
- package/src/core/_is-iterable.ts +3 -0
- package/src/core/_is-plain-object.ts +11 -0
- package/src/core/_logger.ts +5 -0
- package/src/core/_merge-context.ts +9 -0
- package/src/core/_to-context.ts +59 -0
- package/src/core/_to-value-stream.ts +41 -0
- package/src/core/_with-readable-stream-from.ts +70 -0
- package/src/core/context.types.ts +7 -0
- package/src/core/errors.ts +37 -0
- package/src/core/index.ts +23 -0
- package/src/core/plugin.types.ts +10 -0
- package/src/core/storage.types.ts +53 -0
- package/src/core/to-readable-stream.ts +7 -0
- package/src/core/transformer.types.ts +110 -0
- package/src/core/unikvs-config.ts +230 -0
- package/src/core/unikvs.ts +740 -0
- package/src/core/utils.types.ts +3 -0
- package/src/core/value-stream.types.ts +3 -0
- package/src/destinations/memory-storage.ts +160 -0
- package/src/types/storage.ts +5 -0
- package/src/types/transformer.ts +5 -0
- package/README.md +0 -45
package/LICENSE
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
The MIT License (MIT)
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2026-present, tai-kun
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
+
in the Software without restriction, including without limitation the rights
|
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
+
furnished to do so, subject to the following conditions:
|
|
11
|
+
|
|
12
|
+
The above copyright notice and this permission notice shall be included in
|
|
13
|
+
all copies or substantial portions of the Software.
|
|
14
|
+
|
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
|
21
|
+
THE SOFTWARE.
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"_assign-context.d.ts","sourceRoot":"","sources":["../../../src/core/_assign-context.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAElD,MAAM,CAAC,OAAO,UAAU,aAAa,CAAC,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,QAAQ,CAAC,OAAO,CAAC,GAAG,IAAI,CAEtF"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"_combine-signals.d.ts","sourceRoot":"","sources":["../../../src/core/_combine-signals.ts"],"names":[],"mappings":"AAAA,QAAA,IAAI,cAAc,EAAE,CAAC,OAAO,EAAE,SAAS,CAAC,WAAW,GAAG,IAAI,GAAG,SAAS,CAAC,EAAE,KAAK,WAAW,CAAC;AAuC1F,eAAe,cAAc,CAAC"}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
let combineSignals;
|
|
2
|
+
if ("any" in AbortSignal && typeof AbortSignal.any === "function") {
|
|
3
|
+
const AbortSignalAny = AbortSignal.any.bind(AbortSignal);
|
|
4
|
+
combineSignals = function combineSignals(inputSignals) {
|
|
5
|
+
const signals = inputSignals.filter((s) => s != null);
|
|
6
|
+
return AbortSignalAny(signals);
|
|
7
|
+
};
|
|
8
|
+
}
|
|
9
|
+
else {
|
|
10
|
+
combineSignals = function combineSignals(inputSignals) {
|
|
11
|
+
const ac = new AbortController();
|
|
12
|
+
const signals = [];
|
|
13
|
+
for (const signal of inputSignals) {
|
|
14
|
+
if (signal?.aborted) {
|
|
15
|
+
ac.abort(signal.reason);
|
|
16
|
+
return ac.signal;
|
|
17
|
+
}
|
|
18
|
+
if (signal) {
|
|
19
|
+
signals.push(signal);
|
|
20
|
+
}
|
|
21
|
+
}
|
|
22
|
+
function handleAbort() {
|
|
23
|
+
ac.abort(this.reason);
|
|
24
|
+
for (const signal of signals) {
|
|
25
|
+
signal.removeEventListener("abort", handleAbort);
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
for (const signal of signals) {
|
|
29
|
+
signal.addEventListener("abort", handleAbort, { once: true });
|
|
30
|
+
}
|
|
31
|
+
return ac.signal;
|
|
32
|
+
};
|
|
33
|
+
}
|
|
34
|
+
export default combineSignals;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"_is-iterable.d.ts","sourceRoot":"","sources":["../../../src/core/_is-iterable.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,OAAO,UAAU,UAAU,CAAC,CAAC,EAAE,MAAM,GAAG,CAAC,IAAI,QAAQ,CAAC,OAAO,CAAC,GAAG,aAAa,CAAC,OAAO,CAAC,CAE7F"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"_is-plain-object.d.ts","sourceRoot":"","sources":["../../../src/core/_is-plain-object.ts"],"names":[],"mappings":"AAKA,MAAM,CAAC,OAAO,UAAU,aAAa,CAAC,KAAK,EAAE,GAAG,GAAG,KAAK,IAAI,MAAM,CAAC,MAAM,GAAG,EAAE,OAAO,CAAC,CAKrF"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
const ObjectConstructor = Object;
|
|
2
|
+
// oxlint-disable typescript-eslint/unbound-method
|
|
3
|
+
const ObjectToString = ObjectConstructor.prototype.toString;
|
|
4
|
+
export default function isPlainObject(value) {
|
|
5
|
+
return (ObjectToString.call(value) === "[object Object]" &&
|
|
6
|
+
(value.constructor === ObjectConstructor || value.constructor === undefined));
|
|
7
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"_logger.d.ts","sourceRoot":"","sources":["../../../src/core/_logger.ts"],"names":[],"mappings":"AAEA,QAAA,MAAM,GAAG,mCAAoC,CAAC;AAE9C,eAAe,GAAG,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"_merge-context.d.ts","sourceRoot":"","sources":["../../../src/core/_merge-context.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAEjE,MAAM,CAAC,OAAO,UAAU,YAAY,CAClC,CAAC,EAAE,QAAQ,CAAC,OAAO,CAAC,EACpB,CAAC,EAAE,QAAQ,CAAC,OAAO,CAAC,GAAG,aAAa,GAAG,SAAS,GAC/C,OAAO,CAET"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import type { Context, ContextSource } from "./context.types.js";
|
|
2
|
+
declare function toContext(source: ContextSource, options: {
|
|
3
|
+
copy: true;
|
|
4
|
+
}): Context;
|
|
5
|
+
declare function toContext(source: ContextSource): Readonly<Context>;
|
|
6
|
+
export default toContext;
|
|
7
|
+
//# sourceMappingURL=_to-context.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"_to-context.d.ts","sourceRoot":"","sources":["../../../src/core/_to-context.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,OAAO,EAAuB,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAqCtF,iBAAS,SAAS,CAAC,MAAM,EAAE,aAAa,EAAE,OAAO,EAAE;IAAE,IAAI,EAAE,IAAI,CAAA;CAAE,GAAG,OAAO,CAAC;AAE5E,iBAAS,SAAS,CAAC,MAAM,EAAE,aAAa,GAAG,QAAQ,CAAC,OAAO,CAAC,CAAC;AAiB7D,eAAe,SAAS,CAAC"}
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
import isIterable from "./_is-iterable.js";
|
|
2
|
+
import isPlainObject from "./_is-plain-object.js";
|
|
3
|
+
import { TypeError } from "./errors.js";
|
|
4
|
+
function isValidKeyValuePair(x) {
|
|
5
|
+
return (Array.isArray(x) &&
|
|
6
|
+
x.length === 2 &&
|
|
7
|
+
(typeof x[0] === "string" || typeof x[0] === "number" || typeof x[0] === "symbol") &&
|
|
8
|
+
1 in x);
|
|
9
|
+
}
|
|
10
|
+
function iterableToContext(iterable) {
|
|
11
|
+
const ctx = {};
|
|
12
|
+
for (const item of iterable) {
|
|
13
|
+
if (!isValidKeyValuePair(item)) {
|
|
14
|
+
throw new TypeError({
|
|
15
|
+
actualValue: item,
|
|
16
|
+
expectedType: "ContextKeyValuePair",
|
|
17
|
+
});
|
|
18
|
+
}
|
|
19
|
+
const [key, value] = item;
|
|
20
|
+
ctx[key] = value;
|
|
21
|
+
}
|
|
22
|
+
return ctx;
|
|
23
|
+
}
|
|
24
|
+
function contextToContext(ctx, copy) {
|
|
25
|
+
if (copy) {
|
|
26
|
+
ctx = { ...ctx };
|
|
27
|
+
}
|
|
28
|
+
return ctx;
|
|
29
|
+
}
|
|
30
|
+
function toContext(source, options = { copy: false }) {
|
|
31
|
+
if (isIterable(source)) {
|
|
32
|
+
return iterableToContext(source);
|
|
33
|
+
}
|
|
34
|
+
if (isPlainObject(source)) {
|
|
35
|
+
return contextToContext(source, options.copy);
|
|
36
|
+
}
|
|
37
|
+
throw new TypeError({
|
|
38
|
+
actualValue: source,
|
|
39
|
+
expectedType: "ContextSource",
|
|
40
|
+
});
|
|
41
|
+
}
|
|
42
|
+
export default toContext;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"_to-value-stream.d.ts","sourceRoot":"","sources":["../../../src/core/_to-value-stream.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAC1D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAE3D,MAAM,CAAC,OAAO,UAAU,aAAa,CAAC,CAAC,EAAE,CAAC,EAAE,eAAe,CAAC,CAAC,CAAC,GAAG,WAAW,CAAC,CAAC,CAAC,CAoC9E"}
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
import log from "./_logger.js";
|
|
2
|
+
export default function toValueStream(r) {
|
|
3
|
+
if (Symbol.asyncIterator in r) {
|
|
4
|
+
return r;
|
|
5
|
+
}
|
|
6
|
+
return Object.assign(r, {
|
|
7
|
+
async *[Symbol.asyncIterator]() {
|
|
8
|
+
const r = this.getReader();
|
|
9
|
+
try {
|
|
10
|
+
while (true) {
|
|
11
|
+
const { done, value } = await r.read();
|
|
12
|
+
if (done) {
|
|
13
|
+
break;
|
|
14
|
+
}
|
|
15
|
+
yield value;
|
|
16
|
+
}
|
|
17
|
+
}
|
|
18
|
+
catch (ex) {
|
|
19
|
+
try {
|
|
20
|
+
await r.cancel(ex);
|
|
21
|
+
}
|
|
22
|
+
catch (ex) {
|
|
23
|
+
log.error `Failed to cancel reader: ${ex}`;
|
|
24
|
+
}
|
|
25
|
+
throw ex;
|
|
26
|
+
}
|
|
27
|
+
finally {
|
|
28
|
+
try {
|
|
29
|
+
r.releaseLock();
|
|
30
|
+
}
|
|
31
|
+
catch (ex) {
|
|
32
|
+
log.error `Failed to release reader's lock: ${ex}`;
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
return undefined;
|
|
36
|
+
},
|
|
37
|
+
});
|
|
38
|
+
}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
interface ReadableStreamWithFrom extends ReadableStream {
|
|
2
|
+
from<T>(iterable: Iterable<T> | AsyncIterable<T>): ReadableStream<T>;
|
|
3
|
+
}
|
|
4
|
+
export default function withReadableStreamFrom<T>(cb: (ReadableStream: ReadableStreamWithFrom) => T): T;
|
|
5
|
+
export {};
|
|
6
|
+
//# sourceMappingURL=_with-readable-stream-from.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"_with-readable-stream-from.d.ts","sourceRoot":"","sources":["../../../src/core/_with-readable-stream-from.ts"],"names":[],"mappings":"AAIA,UAAU,sBAAuB,SAAQ,cAAc;IACrD,IAAI,CAAC,CAAC,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAC,CAAC,GAAG,aAAa,CAAC,CAAC,CAAC,GAAG,cAAc,CAAC,CAAC,CAAC,CAAC;CACtE;AAED,MAAM,CAAC,OAAO,UAAU,sBAAsB,CAAC,CAAC,EAC9C,EAAE,EAAE,CAAC,cAAc,EAAE,sBAAsB,KAAK,CAAC,GAChD,CAAC,CA2DH"}
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
import isIterable from "./_is-iterable.js";
|
|
2
|
+
import log from "./_logger.js";
|
|
3
|
+
import { TypeError } from "./errors.js";
|
|
4
|
+
export default function withReadableStreamFrom(cb) {
|
|
5
|
+
if ("from" in ReadableStream) {
|
|
6
|
+
return cb(ReadableStream);
|
|
7
|
+
}
|
|
8
|
+
try {
|
|
9
|
+
ReadableStream.from = function ReadableStreamFrom(iterable) {
|
|
10
|
+
if (!isIterable(iterable)) {
|
|
11
|
+
throw new TypeError({
|
|
12
|
+
actualValue: iterable,
|
|
13
|
+
expectedType: "(Iterable | AsyncIterable)",
|
|
14
|
+
});
|
|
15
|
+
}
|
|
16
|
+
const iter = Symbol.asyncIterator in iterable
|
|
17
|
+
? iterable[Symbol.asyncIterator]()
|
|
18
|
+
: (async function* (iterable) {
|
|
19
|
+
yield* iterable;
|
|
20
|
+
})(iterable);
|
|
21
|
+
let done = false;
|
|
22
|
+
return new ReadableStream({
|
|
23
|
+
async pull(controller) {
|
|
24
|
+
if (done) {
|
|
25
|
+
return;
|
|
26
|
+
}
|
|
27
|
+
try {
|
|
28
|
+
const result = await iter.next();
|
|
29
|
+
if (result.done) {
|
|
30
|
+
done = true;
|
|
31
|
+
controller.close();
|
|
32
|
+
}
|
|
33
|
+
else {
|
|
34
|
+
controller.enqueue(result.value);
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
catch (ex) {
|
|
38
|
+
done = true;
|
|
39
|
+
controller.error(ex);
|
|
40
|
+
}
|
|
41
|
+
},
|
|
42
|
+
async cancel(reason) {
|
|
43
|
+
done = true;
|
|
44
|
+
try {
|
|
45
|
+
await iter.return?.(reason);
|
|
46
|
+
}
|
|
47
|
+
catch (ex) {
|
|
48
|
+
log.error `Failed to close iterator: ${ex}`;
|
|
49
|
+
}
|
|
50
|
+
},
|
|
51
|
+
});
|
|
52
|
+
};
|
|
53
|
+
return cb(ReadableStream);
|
|
54
|
+
}
|
|
55
|
+
finally {
|
|
56
|
+
delete ReadableStream.from;
|
|
57
|
+
}
|
|
58
|
+
}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import type { ValueOf } from "./utils.types.js";
|
|
2
|
+
export type Context = Record<keyof any, unknown>;
|
|
3
|
+
export type ContextKeyValuePair = readonly [key: keyof Context, value: ValueOf<Context>];
|
|
4
|
+
export type ContextSource = Readonly<Context> | Iterable<ContextKeyValuePair>;
|
|
5
|
+
//# sourceMappingURL=context.types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"context.types.d.ts","sourceRoot":"","sources":["../../../src/core/context.types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAEhD,MAAM,MAAM,OAAO,GAAG,MAAM,CAAC,MAAM,GAAG,EAAE,OAAO,CAAC,CAAC;AAEjD,MAAM,MAAM,mBAAmB,GAAG,SAAS,CAAC,GAAG,EAAE,MAAM,OAAO,EAAE,KAAK,EAAE,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC;AAEzF,MAAM,MAAM,aAAa,GAAG,QAAQ,CAAC,OAAO,CAAC,GAAG,QAAQ,CAAC,mBAAmB,CAAC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { type ErrorMeta, I18nErrorBase, setErrorMessage } from "i18n-error-base";
|
|
2
|
+
export { setErrorMessage };
|
|
3
|
+
export declare class ErrorBase<TMeta extends ErrorMeta | undefined = ErrorMeta | undefined> extends I18nErrorBase<TMeta> {
|
|
4
|
+
}
|
|
5
|
+
export type TypeErrorMeta = {
|
|
6
|
+
expectedType: string;
|
|
7
|
+
actualValue: unknown;
|
|
8
|
+
actualType: string;
|
|
9
|
+
};
|
|
10
|
+
export declare class TypeError extends ErrorBase<TypeErrorMeta> {
|
|
11
|
+
constructor(meta: Readonly<Pick<TypeErrorMeta, "expectedType" | "actualValue">>);
|
|
12
|
+
}
|
|
13
|
+
//# sourceMappingURL=errors.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../../src/core/errors.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,SAAS,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAGjF,OAAO,EAAE,eAAe,EAAE,CAAC;AAE3B,qBAAa,SAAS,CACpB,KAAK,SAAS,SAAS,GAAG,SAAS,GAAG,SAAS,GAAG,SAAS,CAC3D,SAAQ,aAAa,CAAC,KAAK,CAAC;CAAG;AAEjC,MAAM,MAAM,aAAa,GAAG;IAC1B,YAAY,EAAE,MAAM,CAAC;IACrB,WAAW,EAAE,OAAO,CAAC;IACrB,UAAU,EAAE,MAAM,CAAC;CACpB,CAAC;AAEF,qBAAa,SAAU,SAAQ,SAAS,CAAC,aAAa,CAAC;gBAKlC,IAAI,EAAE,QAAQ,CAAC,IAAI,CAAC,aAAa,EAAE,cAAc,GAAG,aAAa,CAAC,CAAC;CAUvF"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
var _a;
|
|
2
|
+
import { I18nErrorBase, setErrorMessage } from "i18n-error-base";
|
|
3
|
+
import getTypeName from "type-name";
|
|
4
|
+
export { setErrorMessage };
|
|
5
|
+
export class ErrorBase extends I18nErrorBase {
|
|
6
|
+
}
|
|
7
|
+
export class TypeError extends ErrorBase {
|
|
8
|
+
constructor(meta) {
|
|
9
|
+
super({
|
|
10
|
+
actualType: getTypeName(meta.actualValue),
|
|
11
|
+
actualValue: meta.actualValue,
|
|
12
|
+
expectedType: meta.expectedType,
|
|
13
|
+
}, ({ expectedType, actualType }) => `Expected type ${expectedType}, but got ${actualType}`);
|
|
14
|
+
}
|
|
15
|
+
}
|
|
16
|
+
_a = TypeError;
|
|
17
|
+
(() => {
|
|
18
|
+
_a.prototype.name = "UniKvsTypeError";
|
|
19
|
+
})();
|
|
20
|
+
/*#__PURE__*/ setErrorMessage(TypeError, ({ expectedType, actualType }) => `型 ${expectedType} を期待しましたが、${actualType} を得ました`, "ja");
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
export type * from "./context.types.js";
|
|
2
|
+
export type { TypeErrorMeta } from "./errors.js";
|
|
3
|
+
export { setErrorMessage, TypeError, ErrorBase } from "./errors.js";
|
|
4
|
+
export type * from "./plugin.types.js";
|
|
5
|
+
export type * from "./storage.types.js";
|
|
6
|
+
export type * from "./to-readable-stream.js";
|
|
7
|
+
export { default as toReadableStream } from "./to-readable-stream.js";
|
|
8
|
+
export type * from "./transformer.types.js";
|
|
9
|
+
export type * from "./unikvs-config.js";
|
|
10
|
+
export { default as UniKvsConfig } from "./unikvs-config.js";
|
|
11
|
+
export type * from "./unikvs.js";
|
|
12
|
+
export { default as UniKvs } from "./unikvs.js";
|
|
13
|
+
export type * from "./utils.types.js";
|
|
14
|
+
export type * from "./value-stream.types.js";
|
|
15
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/core/index.ts"],"names":[],"mappings":"AAAA,mBAAmB,oBAAoB,CAAC;AAExC,YAAY,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AACjD,OAAO,EAAE,eAAe,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAEpE,mBAAmB,mBAAmB,CAAC;AAEvC,mBAAmB,oBAAoB,CAAC;AAExC,mBAAmB,yBAAyB,CAAC;AAC7C,OAAO,EAAE,OAAO,IAAI,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAEtE,mBAAmB,wBAAwB,CAAC;AAE5C,mBAAmB,oBAAoB,CAAC;AACxC,OAAO,EAAE,OAAO,IAAI,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAE7D,mBAAmB,aAAa,CAAC;AACjC,OAAO,EAAE,OAAO,IAAI,MAAM,EAAE,MAAM,aAAa,CAAC;AAEhD,mBAAmB,kBAAkB,CAAC;AAEtC,mBAAmB,yBAAyB,CAAC"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import type { Context } from "./context.types.js";
|
|
2
|
+
import type { MaybePromise } from "./utils.types.js";
|
|
3
|
+
export interface IPlugin {
|
|
4
|
+
readonly isOpen: boolean;
|
|
5
|
+
open?(signal: AbortSignal, context: Context): MaybePromise<void>;
|
|
6
|
+
close?(signal: AbortSignal, context: Context): MaybePromise<void>;
|
|
7
|
+
}
|
|
8
|
+
//# sourceMappingURL=plugin.types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"plugin.types.d.ts","sourceRoot":"","sources":["../../../src/core/plugin.types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAErD,MAAM,WAAW,OAAO;IACtB,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC;IAEzB,IAAI,CAAC,CAAC,MAAM,EAAE,WAAW,EAAE,OAAO,EAAE,OAAO,GAAG,YAAY,CAAC,IAAI,CAAC,CAAC;IAEjE,KAAK,CAAC,CAAC,MAAM,EAAE,WAAW,EAAE,OAAO,EAAE,OAAO,GAAG,YAAY,CAAC,IAAI,CAAC,CAAC;CACnE"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import type { Context } from "./context.types.js";
|
|
2
|
+
import type { IPlugin } from "./plugin.types.js";
|
|
3
|
+
import type { MaybePromise } from "./utils.types.js";
|
|
4
|
+
export type Key = string;
|
|
5
|
+
export interface IWritableStream<TData = any> extends WritableStream<TData> {
|
|
6
|
+
}
|
|
7
|
+
export interface IWritableStreamStorage<TData = any> {
|
|
8
|
+
getWritable(key: Key, signal: AbortSignal, context: Context): MaybePromise<IWritableStream<TData>>;
|
|
9
|
+
}
|
|
10
|
+
export interface IReadableStream<TData = any> extends ReadableStream<TData> {
|
|
11
|
+
}
|
|
12
|
+
export interface IReadableStreamStorage<TData = any> {
|
|
13
|
+
getReadable(key: Key, signal: AbortSignal, context: Context): MaybePromise<IReadableStream<TData>>;
|
|
14
|
+
}
|
|
15
|
+
export interface IStorage<TWriteDataInput = any, TReadDataOutput = TWriteDataInput, TWriteChunkInput = TWriteDataInput extends ArrayBufferLike | ArrayBufferView ? TWriteDataInput : any, TReadChunkOutput = TWriteChunkInput> extends IPlugin, Partial<IWritableStreamStorage<TWriteChunkInput>>, Partial<IReadableStreamStorage<TReadChunkOutput>> {
|
|
16
|
+
write(key: Key, data: TWriteDataInput, signal: AbortSignal, context: Context): MaybePromise<void>;
|
|
17
|
+
read(key: Key, signal: AbortSignal, context: Context): MaybePromise<TReadDataOutput>;
|
|
18
|
+
exists(key: Key, signal: AbortSignal, context: Context): MaybePromise<boolean>;
|
|
19
|
+
delete(key: Key, signal: AbortSignal, context: Context): MaybePromise<void>;
|
|
20
|
+
clear(signal: AbortSignal, context: Context): MaybePromise<void>;
|
|
21
|
+
}
|
|
22
|
+
//# sourceMappingURL=storage.types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"storage.types.d.ts","sourceRoot":"","sources":["../../../src/core/storage.types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAErD,MAAM,MAAM,GAAG,GAAG,MAAM,CAAC;AAEzB,MAAM,WAAW,eAAe,CAAC,KAAK,GAAG,GAAG,CAAE,SAAQ,cAAc,CAAC,KAAK,CAAC;CAAG;AAE9E,MAAM,WAAW,sBAAsB,CAAC,KAAK,GAAG,GAAG;IACjD,WAAW,CACT,GAAG,EAAE,GAAG,EACR,MAAM,EAAE,WAAW,EACnB,OAAO,EAAE,OAAO,GACf,YAAY,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC,CAAC;CACzC;AAED,MAAM,WAAW,eAAe,CAAC,KAAK,GAAG,GAAG,CAAE,SAAQ,cAAc,CAAC,KAAK,CAAC;CAAG;AAE9E,MAAM,WAAW,sBAAsB,CAAC,KAAK,GAAG,GAAG;IACjD,WAAW,CACT,GAAG,EAAE,GAAG,EACR,MAAM,EAAE,WAAW,EACnB,OAAO,EAAE,OAAO,GACf,YAAY,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC,CAAC;CACzC;AAED,MAAM,WAAW,QAAQ,CACvB,eAAe,GAAG,GAAG,EACrB,eAAe,GAAG,eAAe,EACjC,gBAAgB,GAAG,eAAe,SAAS,eAAe,GAAG,eAAe,GACxE,eAAe,GACf,GAAG,EACP,gBAAgB,GAAG,gBAAgB,CAEnC,SACE,OAAO,EACP,OAAO,CAAC,sBAAsB,CAAC,gBAAgB,CAAC,CAAC,EACjD,OAAO,CAAC,sBAAsB,CAAC,gBAAgB,CAAC,CAAC;IACnD,KAAK,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,eAAe,EAAE,MAAM,EAAE,WAAW,EAAE,OAAO,EAAE,OAAO,GAAG,YAAY,CAAC,IAAI,CAAC,CAAC;IAElG,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,MAAM,EAAE,WAAW,EAAE,OAAO,EAAE,OAAO,GAAG,YAAY,CAAC,eAAe,CAAC,CAAC;IAErF,MAAM,CAAC,GAAG,EAAE,GAAG,EAAE,MAAM,EAAE,WAAW,EAAE,OAAO,EAAE,OAAO,GAAG,YAAY,CAAC,OAAO,CAAC,CAAC;IAO/E,MAAM,CAAC,GAAG,EAAE,GAAG,EAAE,MAAM,EAAE,WAAW,EAAE,OAAO,EAAE,OAAO,GAAG,YAAY,CAAC,IAAI,CAAC,CAAC;IAE5E,KAAK,CAAC,MAAM,EAAE,WAAW,EAAE,OAAO,EAAE,OAAO,GAAG,YAAY,CAAC,IAAI,CAAC,CAAC;CAClE"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"to-readable-stream.d.ts","sourceRoot":"","sources":["../../../src/core/to-readable-stream.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,OAAO,UAAU,gBAAgB,CAAC,CAAC,EACxC,QAAQ,EAAE,QAAQ,CAAC,CAAC,CAAC,GAAG,aAAa,CAAC,CAAC,CAAC,GACvC,cAAc,CAAC,CAAC,CAAC,CAEnB"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import type { Context } from "./context.types.js";
|
|
2
|
+
import type { IPlugin } from "./plugin.types.js";
|
|
3
|
+
import type { MaybePromise } from "./utils.types.js";
|
|
4
|
+
export interface IEncodable<TEncodeChunkInput = any, TEncodeChunkOutput = any> extends TransformStream<TEncodeChunkInput, TEncodeChunkOutput> {
|
|
5
|
+
}
|
|
6
|
+
export interface IEncodableStreamTransformer<TEncodeChunkInput = any, TEncodeChunkOutput = any> {
|
|
7
|
+
getEncodable(signal: AbortSignal, context: Context): MaybePromise<IEncodable<TEncodeChunkInput, TEncodeChunkOutput>>;
|
|
8
|
+
}
|
|
9
|
+
export interface IDecodable<TDecodeChunkInput = any, TDecodeChunkOutput = any> extends TransformStream<TDecodeChunkInput, TDecodeChunkOutput> {
|
|
10
|
+
}
|
|
11
|
+
export interface IDecodableStreamTransformer<TDecodeChunkInput = any, TDecodeChunkOutput = any> {
|
|
12
|
+
getDecodable(signal: AbortSignal, context: Context): MaybePromise<IDecodable<TDecodeChunkInput, TDecodeChunkOutput>>;
|
|
13
|
+
}
|
|
14
|
+
export interface ITransformer<TEncodeDataInput = any, TDecodeDataInput = any, TEncodeDataOutput = any, TDecodeDataOutput = any, TEncodeChunkInput = any, TDecodeChunkInput = any, TEncodeChunkOutput = any, TDecodeChunkOutput = any> extends IPlugin, Partial<IEncodableStreamTransformer<TEncodeChunkInput, TEncodeChunkOutput>>, Partial<IDecodableStreamTransformer<TDecodeChunkInput, TDecodeChunkOutput>> {
|
|
15
|
+
encode(data: TEncodeDataInput, signal: AbortSignal, context: Context): MaybePromise<TEncodeDataOutput>;
|
|
16
|
+
decode(data: TDecodeDataInput, signal: AbortSignal, context: Context): MaybePromise<TDecodeDataOutput>;
|
|
17
|
+
}
|
|
18
|
+
//# sourceMappingURL=transformer.types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"transformer.types.d.ts","sourceRoot":"","sources":["../../../src/core/transformer.types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAkCrD,MAAM,WAAW,UAAU,CACzB,iBAAiB,GAAG,GAAG,EACvB,kBAAkB,GAAG,GAAG,CACxB,SAAQ,eAAe,CAAC,iBAAiB,EAAE,kBAAkB,CAAC;CAAG;AAEnE,MAAM,WAAW,2BAA2B,CAAC,iBAAiB,GAAG,GAAG,EAAE,kBAAkB,GAAG,GAAG;IAC5F,YAAY,CACV,MAAM,EAAE,WAAW,EACnB,OAAO,EAAE,OAAO,GACf,YAAY,CAAC,UAAU,CAAC,iBAAiB,EAAE,kBAAkB,CAAC,CAAC,CAAC;CACpE;AAED,MAAM,WAAW,UAAU,CACzB,iBAAiB,GAAG,GAAG,EACvB,kBAAkB,GAAG,GAAG,CACxB,SAAQ,eAAe,CAAC,iBAAiB,EAAE,kBAAkB,CAAC;CAAG;AAEnE,MAAM,WAAW,2BAA2B,CAAC,iBAAiB,GAAG,GAAG,EAAE,kBAAkB,GAAG,GAAG;IAC5F,YAAY,CACV,MAAM,EAAE,WAAW,EACnB,OAAO,EAAE,OAAO,GACf,YAAY,CAAC,UAAU,CAAC,iBAAiB,EAAE,kBAAkB,CAAC,CAAC,CAAC;CACpE;AAYD,MAAM,WAAW,YAAY,CAC3B,gBAAgB,GAAG,GAAG,EACtB,gBAAgB,GAAG,GAAG,EACtB,iBAAiB,GAAG,GAAG,EACvB,iBAAiB,GAAG,GAAG,EACvB,iBAAiB,GAAG,GAAG,EACvB,iBAAiB,GAAG,GAAG,EACvB,kBAAkB,GAAG,GAAG,EACxB,kBAAkB,GAAG,GAAG,CAExB,SACE,OAAO,EAeP,OAAO,CAAC,2BAA2B,CAAC,iBAAiB,EAAE,kBAAkB,CAAC,CAAC,EAC3E,OAAO,CAAC,2BAA2B,CAAC,iBAAiB,EAAE,kBAAkB,CAAC,CAAC;IAC7E,MAAM,CACJ,IAAI,EAAE,gBAAgB,EACtB,MAAM,EAAE,WAAW,EACnB,OAAO,EAAE,OAAO,GACf,YAAY,CAAC,iBAAiB,CAAC,CAAC;IAEnC,MAAM,CACJ,IAAI,EAAE,gBAAgB,EACtB,MAAM,EAAE,WAAW,EACnB,OAAO,EAAE,OAAO,GACf,YAAY,CAAC,iBAAiB,CAAC,CAAC;CACpC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,82 @@
|
|
|
1
|
+
import type { ContextSource } from "./context.types.js";
|
|
2
|
+
import type { IReadableStreamStorage, IStorage, IWritableStreamStorage, Key } from "./storage.types.js";
|
|
3
|
+
import type { IDecodableStreamTransformer, IEncodableStreamTransformer, ITransformer } from "./transformer.types.js";
|
|
4
|
+
import type UniKvs from "./unikvs.js";
|
|
5
|
+
import type { ValueOf } from "./utils.types.js";
|
|
6
|
+
type $InferDecodeDataInput<TTransformer extends ITransformer> = TTransformer extends ITransformer<any, infer TDecodeDataInput> ? TDecodeDataInput : never;
|
|
7
|
+
type $InferEncodeDataOutput<TTransformer extends ITransformer> = TTransformer extends ITransformer<any, any, infer TEncodeDataOutput> ? TEncodeDataOutput : never;
|
|
8
|
+
type $InferDecodeChunkInput<TTransformer extends ITransformer> = TTransformer extends IDecodableStreamTransformer<infer TDecodeChunkInput> ? TDecodeChunkInput : never;
|
|
9
|
+
type $InferEncodeChunkOutput<TTransformer extends ITransformer> = TTransformer extends IEncodableStreamTransformer<any, infer TEncodeChunkOutput> ? TEncodeChunkOutput : never;
|
|
10
|
+
type $InferWriteChunkInput<TStorage extends IStorage> = TStorage extends IWritableStreamStorage<infer TWriteChunkInput> ? TWriteChunkInput : never;
|
|
11
|
+
type $InferReadChunkOutput<TStorage extends IStorage> = TStorage extends IReadableStreamStorage<infer TReadChunkOutput> ? TReadChunkOutput : never;
|
|
12
|
+
declare const PLAIN_VALUE: unique symbol;
|
|
13
|
+
export type PlainValue<TData = any> = [Kind: typeof PLAIN_VALUE, Data: TData];
|
|
14
|
+
declare const STREAM_VALUE: unique symbol;
|
|
15
|
+
export type StreamValue<TChunkData = any> = [Kind: typeof STREAM_VALUE, ChunkData: TChunkData];
|
|
16
|
+
export type Value<TDataAndChunkData = any> = PlainValue<TDataAndChunkData> | StreamValue<TDataAndChunkData>;
|
|
17
|
+
export type KeyValueMapping<T = any> = {
|
|
18
|
+
readonly [key: Key]: Value<T>;
|
|
19
|
+
};
|
|
20
|
+
export type $InferPlainValueData<TPlainValue> = TPlainValue extends PlainValue<infer TData> ? TData : never;
|
|
21
|
+
export type $InferStreamValueChunkData<TStremValue> = TStremValue extends StreamValue<infer TChunkData> ? TChunkData : never;
|
|
22
|
+
export type KeyofKeyValueMapping<TKeyValueMapping extends KeyValueMapping = KeyValueMapping> = Extract<keyof TKeyValueMapping, Key>;
|
|
23
|
+
export interface IUniKvsConfigBuilder<TKeyValueMapping extends KeyValueMapping = KeyValueMapping, TUniKvsDataInput = ValueOf<{
|
|
24
|
+
[TKey in KeyofKeyValueMapping<TKeyValueMapping>]: $InferPlainValueData<TKeyValueMapping[TKey]>;
|
|
25
|
+
}>, TUniKvsDataOutput = TUniKvsDataInput, TUniKvsChunkInput = ValueOf<{
|
|
26
|
+
[TKey in KeyofKeyValueMapping<TKeyValueMapping>]: $InferStreamValueChunkData<TKeyValueMapping[TKey]>;
|
|
27
|
+
}>, TUniKvsChunkOutput = TUniKvsChunkInput, TLastTransformerDecodeDataInput = TUniKvsDataOutput, TLastTransformerEncodeDataOutput = TUniKvsDataInput, TLastTransformerDecodeChunkInput = TUniKvsChunkOutput, TLastTransformerEncodeChunkOutput = TUniKvsChunkInput> {
|
|
28
|
+
setContext(context: ContextSource): this;
|
|
29
|
+
appendStorage<TStorage extends IStorage<[
|
|
30
|
+
TLastTransformerEncodeDataOutput
|
|
31
|
+
] extends [never] ? any : TLastTransformerEncodeDataOutput, [
|
|
32
|
+
TLastTransformerDecodeDataInput
|
|
33
|
+
] extends [never] ? any : TLastTransformerDecodeDataInput, [
|
|
34
|
+
TLastTransformerEncodeChunkOutput
|
|
35
|
+
] extends [never] ? any : TLastTransformerEncodeChunkOutput, [
|
|
36
|
+
TLastTransformerDecodeChunkInput
|
|
37
|
+
] extends [never] ? any : TLastTransformerDecodeChunkInput>>(storage: TStorage): IUniKvsConfigFinalizer<TKeyValueMapping, TLastTransformerEncodeDataOutput, TLastTransformerDecodeDataInput, [
|
|
38
|
+
TLastTransformerEncodeChunkOutput
|
|
39
|
+
] extends [never] ? never : [$InferWriteChunkInput<TStorage>] extends [never] ? never : TLastTransformerEncodeChunkOutput, [
|
|
40
|
+
TLastTransformerDecodeChunkInput
|
|
41
|
+
] extends [never] ? never : [$InferReadChunkOutput<TStorage>] extends [never] ? never : TLastTransformerDecodeChunkInput>;
|
|
42
|
+
appendTransformer<TTransformer extends ITransformer<[
|
|
43
|
+
TLastTransformerEncodeDataOutput
|
|
44
|
+
] extends [never] ? any : TLastTransformerEncodeDataOutput, any, any, [
|
|
45
|
+
TLastTransformerDecodeDataInput
|
|
46
|
+
] extends [never] ? any : TLastTransformerDecodeDataInput, [
|
|
47
|
+
TLastTransformerEncodeChunkOutput
|
|
48
|
+
] extends [never] ? any : TLastTransformerEncodeChunkOutput, any, any, [
|
|
49
|
+
TLastTransformerDecodeChunkInput
|
|
50
|
+
] extends [never] ? any : TLastTransformerDecodeChunkInput>>(transformer: TTransformer): IUniKvsConfigBuilder<TKeyValueMapping, TUniKvsDataInput, TUniKvsDataOutput, [
|
|
51
|
+
TUniKvsChunkInput
|
|
52
|
+
] extends [never] ? never : [$InferDecodeChunkInput<TTransformer>] extends [never] ? never : TUniKvsChunkInput, [
|
|
53
|
+
TUniKvsChunkOutput
|
|
54
|
+
] extends [never] ? never : [$InferEncodeChunkOutput<TTransformer>] extends [never] ? never : TUniKvsChunkOutput, $InferDecodeDataInput<TTransformer>, $InferEncodeDataOutput<TTransformer>, $InferDecodeChunkInput<TTransformer>, $InferEncodeChunkOutput<TTransformer>>;
|
|
55
|
+
}
|
|
56
|
+
export interface IUniKvsConfigFinalizer<TKeyValueMapping extends KeyValueMapping = KeyValueMapping, TWriteDataInput = any, TReadDataOutput = any, TWriteChunkInput = any, TReadChunkOutput = any> {
|
|
57
|
+
create(): UniKvs<TKeyValueMapping>;
|
|
58
|
+
setContext(context: ContextSource): this;
|
|
59
|
+
appendStorage<TStorage extends IStorage<[
|
|
60
|
+
TWriteDataInput
|
|
61
|
+
] extends [never] ? any : TWriteDataInput, [
|
|
62
|
+
TReadDataOutput
|
|
63
|
+
] extends [never] ? any : TReadDataOutput, [
|
|
64
|
+
TWriteChunkInput
|
|
65
|
+
] extends [never] ? any : TWriteChunkInput, [
|
|
66
|
+
TReadChunkOutput
|
|
67
|
+
] extends [never] ? any : TReadChunkOutput>>(storage: TStorage): IUniKvsConfigFinalizer<TKeyValueMapping, TWriteDataInput, TReadDataOutput, [
|
|
68
|
+
TWriteChunkInput
|
|
69
|
+
] extends [never] ? never : [$InferWriteChunkInput<TStorage>] extends [never] ? never : TWriteChunkInput, [
|
|
70
|
+
TReadChunkOutput
|
|
71
|
+
] extends [never] ? never : [$InferReadChunkOutput<TStorage>] extends [never] ? never : TReadChunkOutput>;
|
|
72
|
+
}
|
|
73
|
+
export default class UniKvsConfig implements IUniKvsConfigBuilder, IUniKvsConfigFinalizer {
|
|
74
|
+
#private;
|
|
75
|
+
constructor(UniKvsConstructor: typeof UniKvs);
|
|
76
|
+
create(): UniKvs;
|
|
77
|
+
setContext(context: ContextSource): this;
|
|
78
|
+
appendStorage(storage: IStorage): IUniKvsConfigFinalizer;
|
|
79
|
+
appendTransformer(transformer: ITransformer): IUniKvsConfigBuilder;
|
|
80
|
+
}
|
|
81
|
+
export {};
|
|
82
|
+
//# sourceMappingURL=unikvs-config.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"unikvs-config.d.ts","sourceRoot":"","sources":["../../../src/core/unikvs-config.ts"],"names":[],"mappings":"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"}
|