@cipherstash/protect-ffi 0.27.0 → 0.29.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/LICENSE.md +1 -1
- package/README.md +106 -34
- package/dist/wasm/protect_ffi.d.ts +10 -3
- package/dist/wasm/protect_ffi_bg.js +63 -14
- package/dist/wasm/protect_ffi_bg.wasm +0 -0
- package/dist/wasm/protect_ffi_bg.wasm.d.ts +11 -11
- package/dist/wasm/protect_ffi_inline.js +1 -1
- package/lib/bigintWire.d.ts +56 -0
- package/lib/bigintWire.js +83 -0
- package/lib/eql-v3-types/Bigint.d.ts +1 -1
- package/lib/eql-v3-types/BigintEq.d.ts +1 -1
- package/lib/eql-v3-types/BigintEqQuery.d.ts +13 -0
- package/lib/eql-v3-types/BigintEqQuery.js +2 -0
- package/lib/eql-v3-types/BigintOrd.d.ts +4 -4
- package/lib/eql-v3-types/BigintOrdOpe.d.ts +1 -1
- package/lib/eql-v3-types/BigintOrdOpeQuery.d.ts +13 -0
- package/lib/eql-v3-types/BigintOrdOpeQuery.js +2 -0
- package/lib/eql-v3-types/BigintOrdOre.d.ts +1 -1
- package/lib/eql-v3-types/BigintOrdOreQuery.d.ts +13 -0
- package/lib/eql-v3-types/BigintOrdOreQuery.js +2 -0
- package/lib/eql-v3-types/BigintOrdQuery.d.ts +13 -0
- package/lib/eql-v3-types/BigintOrdQuery.js +2 -0
- package/lib/eql-v3-types/Boolean.d.ts +1 -1
- package/lib/eql-v3-types/Date.d.ts +1 -1
- package/lib/eql-v3-types/DateEq.d.ts +1 -1
- package/lib/eql-v3-types/DateEqQuery.d.ts +13 -0
- package/lib/eql-v3-types/DateEqQuery.js +2 -0
- package/lib/eql-v3-types/DateOrd.d.ts +4 -4
- package/lib/eql-v3-types/DateOrdOpe.d.ts +1 -1
- package/lib/eql-v3-types/DateOrdOpeQuery.d.ts +13 -0
- package/lib/eql-v3-types/DateOrdOpeQuery.js +2 -0
- package/lib/eql-v3-types/DateOrdOre.d.ts +1 -1
- package/lib/eql-v3-types/DateOrdOreQuery.d.ts +13 -0
- package/lib/eql-v3-types/DateOrdOreQuery.js +2 -0
- package/lib/eql-v3-types/DateOrdQuery.d.ts +13 -0
- package/lib/eql-v3-types/DateOrdQuery.js +2 -0
- package/lib/eql-v3-types/Double.d.ts +1 -1
- package/lib/eql-v3-types/DoubleEq.d.ts +1 -1
- package/lib/eql-v3-types/DoubleEqQuery.d.ts +13 -0
- package/lib/eql-v3-types/DoubleEqQuery.js +2 -0
- package/lib/eql-v3-types/DoubleOrd.d.ts +4 -4
- package/lib/eql-v3-types/DoubleOrdOpe.d.ts +1 -1
- package/lib/eql-v3-types/DoubleOrdOpeQuery.d.ts +13 -0
- package/lib/eql-v3-types/DoubleOrdOpeQuery.js +2 -0
- package/lib/eql-v3-types/DoubleOrdOre.d.ts +1 -1
- package/lib/eql-v3-types/DoubleOrdOreQuery.d.ts +13 -0
- package/lib/eql-v3-types/DoubleOrdOreQuery.js +2 -0
- package/lib/eql-v3-types/DoubleOrdQuery.d.ts +13 -0
- package/lib/eql-v3-types/DoubleOrdQuery.js +2 -0
- package/lib/eql-v3-types/Integer.d.ts +1 -1
- package/lib/eql-v3-types/IntegerEq.d.ts +1 -1
- package/lib/eql-v3-types/IntegerEqQuery.d.ts +13 -0
- package/lib/eql-v3-types/IntegerEqQuery.js +2 -0
- package/lib/eql-v3-types/IntegerOrd.d.ts +4 -4
- package/lib/eql-v3-types/IntegerOrdOpe.d.ts +1 -1
- package/lib/eql-v3-types/IntegerOrdOpeQuery.d.ts +13 -0
- package/lib/eql-v3-types/IntegerOrdOpeQuery.js +2 -0
- package/lib/eql-v3-types/IntegerOrdOre.d.ts +1 -1
- package/lib/eql-v3-types/IntegerOrdOreQuery.d.ts +13 -0
- package/lib/eql-v3-types/IntegerOrdOreQuery.js +2 -0
- package/lib/eql-v3-types/IntegerOrdQuery.d.ts +13 -0
- package/lib/eql-v3-types/IntegerOrdQuery.js +2 -0
- package/lib/eql-v3-types/Numeric.d.ts +1 -1
- package/lib/eql-v3-types/NumericEq.d.ts +1 -1
- package/lib/eql-v3-types/NumericEqQuery.d.ts +13 -0
- package/lib/eql-v3-types/NumericEqQuery.js +2 -0
- package/lib/eql-v3-types/NumericOrd.d.ts +4 -4
- package/lib/eql-v3-types/NumericOrdOpe.d.ts +1 -1
- package/lib/eql-v3-types/NumericOrdOpeQuery.d.ts +13 -0
- package/lib/eql-v3-types/NumericOrdOpeQuery.js +2 -0
- package/lib/eql-v3-types/NumericOrdOre.d.ts +1 -1
- package/lib/eql-v3-types/NumericOrdOreQuery.d.ts +13 -0
- package/lib/eql-v3-types/NumericOrdOreQuery.js +2 -0
- package/lib/eql-v3-types/NumericOrdQuery.d.ts +13 -0
- package/lib/eql-v3-types/NumericOrdQuery.js +2 -0
- package/lib/eql-v3-types/OpeCllw.d.ts +9 -6
- package/lib/eql-v3-types/OreBlock256.d.ts +4 -4
- package/lib/eql-v3-types/Real.d.ts +1 -1
- package/lib/eql-v3-types/RealEq.d.ts +1 -1
- package/lib/eql-v3-types/RealEqQuery.d.ts +13 -0
- package/lib/eql-v3-types/RealEqQuery.js +2 -0
- package/lib/eql-v3-types/RealOrd.d.ts +4 -4
- package/lib/eql-v3-types/RealOrdOpe.d.ts +1 -1
- package/lib/eql-v3-types/RealOrdOpeQuery.d.ts +13 -0
- package/lib/eql-v3-types/RealOrdOpeQuery.js +2 -0
- package/lib/eql-v3-types/RealOrdOre.d.ts +1 -1
- package/lib/eql-v3-types/RealOrdOreQuery.d.ts +13 -0
- package/lib/eql-v3-types/RealOrdOreQuery.js +2 -0
- package/lib/eql-v3-types/RealOrdQuery.d.ts +13 -0
- package/lib/eql-v3-types/RealOrdQuery.js +2 -0
- package/lib/eql-v3-types/Selector.d.ts +1 -1
- package/lib/eql-v3-types/Smallint.d.ts +1 -1
- package/lib/eql-v3-types/SmallintEq.d.ts +1 -1
- package/lib/eql-v3-types/SmallintEqQuery.d.ts +13 -0
- package/lib/eql-v3-types/SmallintEqQuery.js +2 -0
- package/lib/eql-v3-types/SmallintOrd.d.ts +4 -4
- package/lib/eql-v3-types/SmallintOrdOpe.d.ts +1 -1
- package/lib/eql-v3-types/SmallintOrdOpeQuery.d.ts +13 -0
- package/lib/eql-v3-types/SmallintOrdOpeQuery.js +2 -0
- package/lib/eql-v3-types/SmallintOrdOre.d.ts +1 -1
- package/lib/eql-v3-types/SmallintOrdOreQuery.d.ts +13 -0
- package/lib/eql-v3-types/SmallintOrdOreQuery.js +2 -0
- package/lib/eql-v3-types/SmallintOrdQuery.d.ts +13 -0
- package/lib/eql-v3-types/SmallintOrdQuery.js +2 -0
- package/lib/eql-v3-types/SteVecDocument.d.ts +1 -1
- package/lib/eql-v3-types/SteVecEntry.d.ts +4 -4
- package/lib/eql-v3-types/SteVecQuery.d.ts +1 -1
- package/lib/eql-v3-types/SteVecQueryEntry.d.ts +2 -2
- package/lib/eql-v3-types/SteVecTerm.d.ts +4 -4
- package/lib/eql-v3-types/Text.d.ts +1 -1
- package/lib/eql-v3-types/TextEq.d.ts +1 -1
- package/lib/eql-v3-types/TextEqQuery.d.ts +13 -0
- package/lib/eql-v3-types/TextEqQuery.js +2 -0
- package/lib/eql-v3-types/TextMatch.d.ts +1 -1
- package/lib/eql-v3-types/TextMatchQuery.d.ts +13 -0
- package/lib/eql-v3-types/TextMatchQuery.js +2 -0
- package/lib/eql-v3-types/TextOrd.d.ts +4 -4
- package/lib/eql-v3-types/TextOrdOpe.d.ts +1 -1
- package/lib/eql-v3-types/TextOrdOpeQuery.d.ts +15 -0
- package/lib/eql-v3-types/TextOrdOpeQuery.js +2 -0
- package/lib/eql-v3-types/TextOrdOre.d.ts +1 -1
- package/lib/eql-v3-types/TextOrdOreQuery.d.ts +15 -0
- package/lib/eql-v3-types/TextOrdOreQuery.js +2 -0
- package/lib/eql-v3-types/TextOrdQuery.d.ts +15 -0
- package/lib/eql-v3-types/TextOrdQuery.js +2 -0
- package/lib/eql-v3-types/TextSearch.d.ts +4 -4
- package/lib/eql-v3-types/TextSearchOre.d.ts +19 -0
- package/lib/eql-v3-types/TextSearchOre.js +2 -0
- package/lib/eql-v3-types/TextSearchOreQuery.d.ts +17 -0
- package/lib/eql-v3-types/TextSearchOreQuery.js +2 -0
- package/lib/eql-v3-types/TextSearchQuery.d.ts +17 -0
- package/lib/eql-v3-types/TextSearchQuery.js +2 -0
- package/lib/eql-v3-types/Timestamp.d.ts +1 -1
- package/lib/eql-v3-types/TimestampEq.d.ts +1 -1
- package/lib/eql-v3-types/TimestampEqQuery.d.ts +13 -0
- package/lib/eql-v3-types/TimestampEqQuery.js +2 -0
- package/lib/eql-v3-types/TimestampOrd.d.ts +4 -4
- package/lib/eql-v3-types/TimestampOrdOpe.d.ts +1 -1
- package/lib/eql-v3-types/TimestampOrdOpeQuery.d.ts +13 -0
- package/lib/eql-v3-types/TimestampOrdOpeQuery.js +2 -0
- package/lib/eql-v3-types/TimestampOrdOre.d.ts +1 -1
- package/lib/eql-v3-types/TimestampOrdOreQuery.d.ts +13 -0
- package/lib/eql-v3-types/TimestampOrdOreQuery.js +2 -0
- package/lib/eql-v3-types/TimestampOrdQuery.d.ts +13 -0
- package/lib/eql-v3-types/TimestampOrdQuery.js +2 -0
- package/lib/eql-v3.d.ts +63 -7
- package/lib/errors.d.ts +1 -1
- package/lib/errors.js +0 -4
- package/lib/index.cjs +23 -11
- package/lib/index.d.cts +91 -25
- package/lib/normalizeEncryptConfig.d.ts +2 -1
- package/lib/normalizeEncryptConfig.js +2 -1
- package/package.json +11 -11
- package/lib/eql-v3-types/OreCllw.d.ts +0 -7
- package/lib/eql-v3-types/OreCllw.js +0 -5
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Internal wire encoding for JS `bigint` plaintexts crossing the Neon
|
|
3
|
+
* boundary.
|
|
4
|
+
*
|
|
5
|
+
* The native addon extracts every options object with neon's `Json`
|
|
6
|
+
* extractor, which runs `JSON.stringify` on the JS side — and
|
|
7
|
+
* `JSON.stringify` throws a `TypeError` on any `bigint`. So `bigint`
|
|
8
|
+
* plaintexts are bounds-checked against i64 here (with a clear
|
|
9
|
+
* `RangeError`) and encoded into the tagged single-key map
|
|
10
|
+
* `{"__protect_ffi_bigint__": "<decimal string>"}`, which the Rust side
|
|
11
|
+
* deserializes into `JsPlaintext::BigInt`. The value is a decimal string,
|
|
12
|
+
* not a number: an i64-magnitude number literal would already have lost
|
|
13
|
+
* precision beyond 2^53.
|
|
14
|
+
*
|
|
15
|
+
* The wasm build performs the equivalent encoding in Rust
|
|
16
|
+
* (`encode_plaintext` in `crates/protect-ffi/src/wasm.rs`) because
|
|
17
|
+
* wasm consumers call the wasm-bindgen exports directly, without this
|
|
18
|
+
* wrapper.
|
|
19
|
+
*
|
|
20
|
+
* The decrypt direction needs no decoding: the native addon constructs a
|
|
21
|
+
* real JS `bigint` (`JsBigInt::from_i64` on Neon, `js_sys::BigInt` on
|
|
22
|
+
* wasm).
|
|
23
|
+
*/
|
|
24
|
+
/** Must match `BIGINT_WIRE_KEY` in `crates/protect-ffi/src/js_plaintext.rs`. */
|
|
25
|
+
export declare const BIGINT_WIRE_KEY = "__protect_ffi_bigint__";
|
|
26
|
+
/** Smallest value an encrypted bigint column can store (i64::MIN). */
|
|
27
|
+
export declare const BIGINT_MIN: bigint;
|
|
28
|
+
/** Largest value an encrypted bigint column can store (i64::MAX). */
|
|
29
|
+
export declare const BIGINT_MAX: bigint;
|
|
30
|
+
/** The tagged wire form a `bigint` plaintext crosses the boundary in. */
|
|
31
|
+
export type BigIntWire = {
|
|
32
|
+
[K in typeof BIGINT_WIRE_KEY]: string;
|
|
33
|
+
};
|
|
34
|
+
/**
|
|
35
|
+
* Encode a `bigint` plaintext into its tagged wire form, throwing a
|
|
36
|
+
* `RangeError` (naming the i64 bounds and the offending direction) when
|
|
37
|
+
* the value does not fit a signed 64-bit integer. Non-`bigint` values pass
|
|
38
|
+
* through untouched. The error deliberately does not echo the value: it is
|
|
39
|
+
* plaintext being encrypted.
|
|
40
|
+
*/
|
|
41
|
+
export declare function encodeBigIntPlaintext<T>(plaintext: T | bigint): T | BigIntWire;
|
|
42
|
+
/**
|
|
43
|
+
* Return `opts` with a `bigint` `plaintext` replaced by its tagged wire
|
|
44
|
+
* form. When the plaintext is not a `bigint`, the original object is
|
|
45
|
+
* returned unchanged (no clone).
|
|
46
|
+
*/
|
|
47
|
+
export declare function withEncodedPlaintext<T extends {
|
|
48
|
+
plaintext: unknown;
|
|
49
|
+
}>(opts: T): T;
|
|
50
|
+
/**
|
|
51
|
+
* Bulk variant of {@link withEncodedPlaintext}: returns the original array
|
|
52
|
+
* (no clone) when no payload carries a `bigint` plaintext.
|
|
53
|
+
*/
|
|
54
|
+
export declare function withEncodedPlaintexts<T extends {
|
|
55
|
+
plaintext: unknown;
|
|
56
|
+
}>(payloads: T[]): T[];
|
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Internal wire encoding for JS `bigint` plaintexts crossing the Neon
|
|
4
|
+
* boundary.
|
|
5
|
+
*
|
|
6
|
+
* The native addon extracts every options object with neon's `Json`
|
|
7
|
+
* extractor, which runs `JSON.stringify` on the JS side — and
|
|
8
|
+
* `JSON.stringify` throws a `TypeError` on any `bigint`. So `bigint`
|
|
9
|
+
* plaintexts are bounds-checked against i64 here (with a clear
|
|
10
|
+
* `RangeError`) and encoded into the tagged single-key map
|
|
11
|
+
* `{"__protect_ffi_bigint__": "<decimal string>"}`, which the Rust side
|
|
12
|
+
* deserializes into `JsPlaintext::BigInt`. The value is a decimal string,
|
|
13
|
+
* not a number: an i64-magnitude number literal would already have lost
|
|
14
|
+
* precision beyond 2^53.
|
|
15
|
+
*
|
|
16
|
+
* The wasm build performs the equivalent encoding in Rust
|
|
17
|
+
* (`encode_plaintext` in `crates/protect-ffi/src/wasm.rs`) because
|
|
18
|
+
* wasm consumers call the wasm-bindgen exports directly, without this
|
|
19
|
+
* wrapper.
|
|
20
|
+
*
|
|
21
|
+
* The decrypt direction needs no decoding: the native addon constructs a
|
|
22
|
+
* real JS `bigint` (`JsBigInt::from_i64` on Neon, `js_sys::BigInt` on
|
|
23
|
+
* wasm).
|
|
24
|
+
*/
|
|
25
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
26
|
+
exports.BIGINT_MAX = exports.BIGINT_MIN = exports.BIGINT_WIRE_KEY = void 0;
|
|
27
|
+
exports.encodeBigIntPlaintext = encodeBigIntPlaintext;
|
|
28
|
+
exports.withEncodedPlaintext = withEncodedPlaintext;
|
|
29
|
+
exports.withEncodedPlaintexts = withEncodedPlaintexts;
|
|
30
|
+
/** Must match `BIGINT_WIRE_KEY` in `crates/protect-ffi/src/js_plaintext.rs`. */
|
|
31
|
+
exports.BIGINT_WIRE_KEY = '__protect_ffi_bigint__';
|
|
32
|
+
/** Smallest value an encrypted bigint column can store (i64::MIN). */
|
|
33
|
+
exports.BIGINT_MIN = -(2n ** 63n);
|
|
34
|
+
/** Largest value an encrypted bigint column can store (i64::MAX). */
|
|
35
|
+
exports.BIGINT_MAX = 2n ** 63n - 1n;
|
|
36
|
+
const I64_BOUNDS_SUFFIX = 'encrypted bigint values must fit in a signed 64-bit integer ' +
|
|
37
|
+
'(-9223372036854775808 to 9223372036854775807)';
|
|
38
|
+
/**
|
|
39
|
+
* Encode a `bigint` plaintext into its tagged wire form, throwing a
|
|
40
|
+
* `RangeError` (naming the i64 bounds and the offending direction) when
|
|
41
|
+
* the value does not fit a signed 64-bit integer. Non-`bigint` values pass
|
|
42
|
+
* through untouched. The error deliberately does not echo the value: it is
|
|
43
|
+
* plaintext being encrypted.
|
|
44
|
+
*/
|
|
45
|
+
function encodeBigIntPlaintext(plaintext) {
|
|
46
|
+
if (typeof plaintext !== 'bigint') {
|
|
47
|
+
return plaintext;
|
|
48
|
+
}
|
|
49
|
+
if (plaintext > exports.BIGINT_MAX) {
|
|
50
|
+
throw new RangeError(`BigInt plaintext is above the maximum supported value: ${I64_BOUNDS_SUFFIX}`);
|
|
51
|
+
}
|
|
52
|
+
if (plaintext < exports.BIGINT_MIN) {
|
|
53
|
+
throw new RangeError(`BigInt plaintext is below the minimum supported value: ${I64_BOUNDS_SUFFIX}`);
|
|
54
|
+
}
|
|
55
|
+
return { [exports.BIGINT_WIRE_KEY]: plaintext.toString() };
|
|
56
|
+
}
|
|
57
|
+
/**
|
|
58
|
+
* Return `opts` with a `bigint` `plaintext` replaced by its tagged wire
|
|
59
|
+
* form. When the plaintext is not a `bigint`, the original object is
|
|
60
|
+
* returned unchanged (no clone).
|
|
61
|
+
*/
|
|
62
|
+
function withEncodedPlaintext(opts) {
|
|
63
|
+
// `opts?.` (matching the detection pass in withEncodedPlaintexts): a
|
|
64
|
+
// null/undefined element must fall through to native's own validation
|
|
65
|
+
// error rather than throw a raw property-access TypeError here — the
|
|
66
|
+
// error a bad element produces must not depend on whether a *sibling*
|
|
67
|
+
// element happens to carry a bigint.
|
|
68
|
+
if (typeof opts?.plaintext !== 'bigint') {
|
|
69
|
+
return opts;
|
|
70
|
+
}
|
|
71
|
+
return { ...opts, plaintext: encodeBigIntPlaintext(opts.plaintext) };
|
|
72
|
+
}
|
|
73
|
+
/**
|
|
74
|
+
* Bulk variant of {@link withEncodedPlaintext}: returns the original array
|
|
75
|
+
* (no clone) when no payload carries a `bigint` plaintext.
|
|
76
|
+
*/
|
|
77
|
+
function withEncodedPlaintexts(payloads) {
|
|
78
|
+
if (!Array.isArray(payloads) ||
|
|
79
|
+
!payloads.some((p) => typeof p?.plaintext === 'bigint')) {
|
|
80
|
+
return payloads;
|
|
81
|
+
}
|
|
82
|
+
return payloads.map(withEncodedPlaintext);
|
|
83
|
+
}
|
|
@@ -2,7 +2,7 @@ import type { Ciphertext } from "./Ciphertext";
|
|
|
2
2
|
import type { Identifier } from "./Identifier";
|
|
3
3
|
import type { SchemaVersion } from "./SchemaVersion";
|
|
4
4
|
/**
|
|
5
|
-
* `
|
|
5
|
+
* `public.eql_v3_bigint` — storage-only domain.
|
|
6
6
|
*
|
|
7
7
|
* Operators: none. Required keys: `v` `i` `c`.
|
|
8
8
|
*/
|
|
@@ -3,7 +3,7 @@ import type { Hmac256 } from "./Hmac256";
|
|
|
3
3
|
import type { Identifier } from "./Identifier";
|
|
4
4
|
import type { SchemaVersion } from "./SchemaVersion";
|
|
5
5
|
/**
|
|
6
|
-
* `
|
|
6
|
+
* `public.eql_v3_bigint_eq` — equality domain.
|
|
7
7
|
*
|
|
8
8
|
* Operators: `=` `<>`. Required keys: `v` `i` `c` `hm`.
|
|
9
9
|
*/
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import type { Hmac256 } from "./Hmac256";
|
|
2
|
+
import type { Identifier } from "./Identifier";
|
|
3
|
+
import type { SchemaVersion } from "./SchemaVersion";
|
|
4
|
+
/**
|
|
5
|
+
* `eql_v3.query_bigint_eq` — equality domain query operand.
|
|
6
|
+
*
|
|
7
|
+
* Operators: `=` `<>`. Required keys: `v` `i` `hm`.
|
|
8
|
+
*/
|
|
9
|
+
export type BigintEqQuery = {
|
|
10
|
+
v: SchemaVersion;
|
|
11
|
+
i: Identifier;
|
|
12
|
+
hm: Hmac256;
|
|
13
|
+
};
|
|
@@ -1,15 +1,15 @@
|
|
|
1
1
|
import type { Ciphertext } from "./Ciphertext";
|
|
2
2
|
import type { Identifier } from "./Identifier";
|
|
3
|
-
import type {
|
|
3
|
+
import type { OpeCllw } from "./OpeCllw";
|
|
4
4
|
import type { SchemaVersion } from "./SchemaVersion";
|
|
5
5
|
/**
|
|
6
|
-
* `
|
|
6
|
+
* `public.eql_v3_bigint_ord` — ordering domain.
|
|
7
7
|
*
|
|
8
|
-
* Operators: `=` `<>` `<` `<=` `>` `>=`. Required keys: `v` `i` `c` `
|
|
8
|
+
* Operators: `=` `<>` `<` `<=` `>` `>=`. Required keys: `v` `i` `c` `op`.
|
|
9
9
|
*/
|
|
10
10
|
export type BigintOrd = {
|
|
11
11
|
v: SchemaVersion;
|
|
12
12
|
i: Identifier;
|
|
13
13
|
c: Ciphertext;
|
|
14
|
-
|
|
14
|
+
op: OpeCllw;
|
|
15
15
|
};
|
|
@@ -3,7 +3,7 @@ import type { Identifier } from "./Identifier";
|
|
|
3
3
|
import type { OpeCllw } from "./OpeCllw";
|
|
4
4
|
import type { SchemaVersion } from "./SchemaVersion";
|
|
5
5
|
/**
|
|
6
|
-
* `
|
|
6
|
+
* `public.eql_v3_bigint_ord_ope` — ordering domain.
|
|
7
7
|
*
|
|
8
8
|
* Operators: `=` `<>` `<` `<=` `>` `>=`. Required keys: `v` `i` `c` `op`.
|
|
9
9
|
*/
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import type { Identifier } from "./Identifier";
|
|
2
|
+
import type { OpeCllw } from "./OpeCllw";
|
|
3
|
+
import type { SchemaVersion } from "./SchemaVersion";
|
|
4
|
+
/**
|
|
5
|
+
* `eql_v3.query_bigint_ord_ope` — ordering domain query operand.
|
|
6
|
+
*
|
|
7
|
+
* Operators: `=` `<>` `<` `<=` `>` `>=`. Required keys: `v` `i` `op`.
|
|
8
|
+
*/
|
|
9
|
+
export type BigintOrdOpeQuery = {
|
|
10
|
+
v: SchemaVersion;
|
|
11
|
+
i: Identifier;
|
|
12
|
+
op: OpeCllw;
|
|
13
|
+
};
|
|
@@ -3,7 +3,7 @@ import type { Identifier } from "./Identifier";
|
|
|
3
3
|
import type { OreBlock256 } from "./OreBlock256";
|
|
4
4
|
import type { SchemaVersion } from "./SchemaVersion";
|
|
5
5
|
/**
|
|
6
|
-
* `
|
|
6
|
+
* `public.eql_v3_bigint_ord_ore` — ordering domain.
|
|
7
7
|
*
|
|
8
8
|
* Operators: `=` `<>` `<` `<=` `>` `>=`. Required keys: `v` `i` `c` `ob`.
|
|
9
9
|
*/
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import type { Identifier } from "./Identifier";
|
|
2
|
+
import type { OreBlock256 } from "./OreBlock256";
|
|
3
|
+
import type { SchemaVersion } from "./SchemaVersion";
|
|
4
|
+
/**
|
|
5
|
+
* `eql_v3.query_bigint_ord_ore` — ordering domain query operand.
|
|
6
|
+
*
|
|
7
|
+
* Operators: `=` `<>` `<` `<=` `>` `>=`. Required keys: `v` `i` `ob`.
|
|
8
|
+
*/
|
|
9
|
+
export type BigintOrdOreQuery = {
|
|
10
|
+
v: SchemaVersion;
|
|
11
|
+
i: Identifier;
|
|
12
|
+
ob: OreBlock256;
|
|
13
|
+
};
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import type { Identifier } from "./Identifier";
|
|
2
|
+
import type { OpeCllw } from "./OpeCllw";
|
|
3
|
+
import type { SchemaVersion } from "./SchemaVersion";
|
|
4
|
+
/**
|
|
5
|
+
* `eql_v3.query_bigint_ord` — ordering domain query operand.
|
|
6
|
+
*
|
|
7
|
+
* Operators: `=` `<>` `<` `<=` `>` `>=`. Required keys: `v` `i` `op`.
|
|
8
|
+
*/
|
|
9
|
+
export type BigintOrdQuery = {
|
|
10
|
+
v: SchemaVersion;
|
|
11
|
+
i: Identifier;
|
|
12
|
+
op: OpeCllw;
|
|
13
|
+
};
|
|
@@ -2,7 +2,7 @@ import type { Ciphertext } from "./Ciphertext";
|
|
|
2
2
|
import type { Identifier } from "./Identifier";
|
|
3
3
|
import type { SchemaVersion } from "./SchemaVersion";
|
|
4
4
|
/**
|
|
5
|
-
* `
|
|
5
|
+
* `public.eql_v3_boolean` — storage-only domain.
|
|
6
6
|
*
|
|
7
7
|
* Operators: none. Required keys: `v` `i` `c`.
|
|
8
8
|
*/
|
|
@@ -2,7 +2,7 @@ import type { Ciphertext } from "./Ciphertext";
|
|
|
2
2
|
import type { Identifier } from "./Identifier";
|
|
3
3
|
import type { SchemaVersion } from "./SchemaVersion";
|
|
4
4
|
/**
|
|
5
|
-
* `
|
|
5
|
+
* `public.eql_v3_date` — storage-only domain.
|
|
6
6
|
*
|
|
7
7
|
* Operators: none. Required keys: `v` `i` `c`.
|
|
8
8
|
*/
|
|
@@ -3,7 +3,7 @@ import type { Hmac256 } from "./Hmac256";
|
|
|
3
3
|
import type { Identifier } from "./Identifier";
|
|
4
4
|
import type { SchemaVersion } from "./SchemaVersion";
|
|
5
5
|
/**
|
|
6
|
-
* `
|
|
6
|
+
* `public.eql_v3_date_eq` — equality domain.
|
|
7
7
|
*
|
|
8
8
|
* Operators: `=` `<>`. Required keys: `v` `i` `c` `hm`.
|
|
9
9
|
*/
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import type { Hmac256 } from "./Hmac256";
|
|
2
|
+
import type { Identifier } from "./Identifier";
|
|
3
|
+
import type { SchemaVersion } from "./SchemaVersion";
|
|
4
|
+
/**
|
|
5
|
+
* `eql_v3.query_date_eq` — equality domain query operand.
|
|
6
|
+
*
|
|
7
|
+
* Operators: `=` `<>`. Required keys: `v` `i` `hm`.
|
|
8
|
+
*/
|
|
9
|
+
export type DateEqQuery = {
|
|
10
|
+
v: SchemaVersion;
|
|
11
|
+
i: Identifier;
|
|
12
|
+
hm: Hmac256;
|
|
13
|
+
};
|
|
@@ -1,15 +1,15 @@
|
|
|
1
1
|
import type { Ciphertext } from "./Ciphertext";
|
|
2
2
|
import type { Identifier } from "./Identifier";
|
|
3
|
-
import type {
|
|
3
|
+
import type { OpeCllw } from "./OpeCllw";
|
|
4
4
|
import type { SchemaVersion } from "./SchemaVersion";
|
|
5
5
|
/**
|
|
6
|
-
* `
|
|
6
|
+
* `public.eql_v3_date_ord` — ordering domain.
|
|
7
7
|
*
|
|
8
|
-
* Operators: `=` `<>` `<` `<=` `>` `>=`. Required keys: `v` `i` `c` `
|
|
8
|
+
* Operators: `=` `<>` `<` `<=` `>` `>=`. Required keys: `v` `i` `c` `op`.
|
|
9
9
|
*/
|
|
10
10
|
export type DateOrd = {
|
|
11
11
|
v: SchemaVersion;
|
|
12
12
|
i: Identifier;
|
|
13
13
|
c: Ciphertext;
|
|
14
|
-
|
|
14
|
+
op: OpeCllw;
|
|
15
15
|
};
|
|
@@ -3,7 +3,7 @@ import type { Identifier } from "./Identifier";
|
|
|
3
3
|
import type { OpeCllw } from "./OpeCllw";
|
|
4
4
|
import type { SchemaVersion } from "./SchemaVersion";
|
|
5
5
|
/**
|
|
6
|
-
* `
|
|
6
|
+
* `public.eql_v3_date_ord_ope` — ordering domain.
|
|
7
7
|
*
|
|
8
8
|
* Operators: `=` `<>` `<` `<=` `>` `>=`. Required keys: `v` `i` `c` `op`.
|
|
9
9
|
*/
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import type { Identifier } from "./Identifier";
|
|
2
|
+
import type { OpeCllw } from "./OpeCllw";
|
|
3
|
+
import type { SchemaVersion } from "./SchemaVersion";
|
|
4
|
+
/**
|
|
5
|
+
* `eql_v3.query_date_ord_ope` — ordering domain query operand.
|
|
6
|
+
*
|
|
7
|
+
* Operators: `=` `<>` `<` `<=` `>` `>=`. Required keys: `v` `i` `op`.
|
|
8
|
+
*/
|
|
9
|
+
export type DateOrdOpeQuery = {
|
|
10
|
+
v: SchemaVersion;
|
|
11
|
+
i: Identifier;
|
|
12
|
+
op: OpeCllw;
|
|
13
|
+
};
|
|
@@ -3,7 +3,7 @@ import type { Identifier } from "./Identifier";
|
|
|
3
3
|
import type { OreBlock256 } from "./OreBlock256";
|
|
4
4
|
import type { SchemaVersion } from "./SchemaVersion";
|
|
5
5
|
/**
|
|
6
|
-
* `
|
|
6
|
+
* `public.eql_v3_date_ord_ore` — ordering domain.
|
|
7
7
|
*
|
|
8
8
|
* Operators: `=` `<>` `<` `<=` `>` `>=`. Required keys: `v` `i` `c` `ob`.
|
|
9
9
|
*/
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import type { Identifier } from "./Identifier";
|
|
2
|
+
import type { OreBlock256 } from "./OreBlock256";
|
|
3
|
+
import type { SchemaVersion } from "./SchemaVersion";
|
|
4
|
+
/**
|
|
5
|
+
* `eql_v3.query_date_ord_ore` — ordering domain query operand.
|
|
6
|
+
*
|
|
7
|
+
* Operators: `=` `<>` `<` `<=` `>` `>=`. Required keys: `v` `i` `ob`.
|
|
8
|
+
*/
|
|
9
|
+
export type DateOrdOreQuery = {
|
|
10
|
+
v: SchemaVersion;
|
|
11
|
+
i: Identifier;
|
|
12
|
+
ob: OreBlock256;
|
|
13
|
+
};
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import type { Identifier } from "./Identifier";
|
|
2
|
+
import type { OpeCllw } from "./OpeCllw";
|
|
3
|
+
import type { SchemaVersion } from "./SchemaVersion";
|
|
4
|
+
/**
|
|
5
|
+
* `eql_v3.query_date_ord` — ordering domain query operand.
|
|
6
|
+
*
|
|
7
|
+
* Operators: `=` `<>` `<` `<=` `>` `>=`. Required keys: `v` `i` `op`.
|
|
8
|
+
*/
|
|
9
|
+
export type DateOrdQuery = {
|
|
10
|
+
v: SchemaVersion;
|
|
11
|
+
i: Identifier;
|
|
12
|
+
op: OpeCllw;
|
|
13
|
+
};
|
|
@@ -2,7 +2,7 @@ import type { Ciphertext } from "./Ciphertext";
|
|
|
2
2
|
import type { Identifier } from "./Identifier";
|
|
3
3
|
import type { SchemaVersion } from "./SchemaVersion";
|
|
4
4
|
/**
|
|
5
|
-
* `
|
|
5
|
+
* `public.eql_v3_double` — storage-only domain.
|
|
6
6
|
*
|
|
7
7
|
* Operators: none. Required keys: `v` `i` `c`.
|
|
8
8
|
*/
|
|
@@ -3,7 +3,7 @@ import type { Hmac256 } from "./Hmac256";
|
|
|
3
3
|
import type { Identifier } from "./Identifier";
|
|
4
4
|
import type { SchemaVersion } from "./SchemaVersion";
|
|
5
5
|
/**
|
|
6
|
-
* `
|
|
6
|
+
* `public.eql_v3_double_eq` — equality domain.
|
|
7
7
|
*
|
|
8
8
|
* Operators: `=` `<>`. Required keys: `v` `i` `c` `hm`.
|
|
9
9
|
*/
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import type { Hmac256 } from "./Hmac256";
|
|
2
|
+
import type { Identifier } from "./Identifier";
|
|
3
|
+
import type { SchemaVersion } from "./SchemaVersion";
|
|
4
|
+
/**
|
|
5
|
+
* `eql_v3.query_double_eq` — equality domain query operand.
|
|
6
|
+
*
|
|
7
|
+
* Operators: `=` `<>`. Required keys: `v` `i` `hm`.
|
|
8
|
+
*/
|
|
9
|
+
export type DoubleEqQuery = {
|
|
10
|
+
v: SchemaVersion;
|
|
11
|
+
i: Identifier;
|
|
12
|
+
hm: Hmac256;
|
|
13
|
+
};
|
|
@@ -1,15 +1,15 @@
|
|
|
1
1
|
import type { Ciphertext } from "./Ciphertext";
|
|
2
2
|
import type { Identifier } from "./Identifier";
|
|
3
|
-
import type {
|
|
3
|
+
import type { OpeCllw } from "./OpeCllw";
|
|
4
4
|
import type { SchemaVersion } from "./SchemaVersion";
|
|
5
5
|
/**
|
|
6
|
-
* `
|
|
6
|
+
* `public.eql_v3_double_ord` — ordering domain.
|
|
7
7
|
*
|
|
8
|
-
* Operators: `=` `<>` `<` `<=` `>` `>=`. Required keys: `v` `i` `c` `
|
|
8
|
+
* Operators: `=` `<>` `<` `<=` `>` `>=`. Required keys: `v` `i` `c` `op`.
|
|
9
9
|
*/
|
|
10
10
|
export type DoubleOrd = {
|
|
11
11
|
v: SchemaVersion;
|
|
12
12
|
i: Identifier;
|
|
13
13
|
c: Ciphertext;
|
|
14
|
-
|
|
14
|
+
op: OpeCllw;
|
|
15
15
|
};
|
|
@@ -3,7 +3,7 @@ import type { Identifier } from "./Identifier";
|
|
|
3
3
|
import type { OpeCllw } from "./OpeCllw";
|
|
4
4
|
import type { SchemaVersion } from "./SchemaVersion";
|
|
5
5
|
/**
|
|
6
|
-
* `
|
|
6
|
+
* `public.eql_v3_double_ord_ope` — ordering domain.
|
|
7
7
|
*
|
|
8
8
|
* Operators: `=` `<>` `<` `<=` `>` `>=`. Required keys: `v` `i` `c` `op`.
|
|
9
9
|
*/
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import type { Identifier } from "./Identifier";
|
|
2
|
+
import type { OpeCllw } from "./OpeCllw";
|
|
3
|
+
import type { SchemaVersion } from "./SchemaVersion";
|
|
4
|
+
/**
|
|
5
|
+
* `eql_v3.query_double_ord_ope` — ordering domain query operand.
|
|
6
|
+
*
|
|
7
|
+
* Operators: `=` `<>` `<` `<=` `>` `>=`. Required keys: `v` `i` `op`.
|
|
8
|
+
*/
|
|
9
|
+
export type DoubleOrdOpeQuery = {
|
|
10
|
+
v: SchemaVersion;
|
|
11
|
+
i: Identifier;
|
|
12
|
+
op: OpeCllw;
|
|
13
|
+
};
|
|
@@ -3,7 +3,7 @@ import type { Identifier } from "./Identifier";
|
|
|
3
3
|
import type { OreBlock256 } from "./OreBlock256";
|
|
4
4
|
import type { SchemaVersion } from "./SchemaVersion";
|
|
5
5
|
/**
|
|
6
|
-
* `
|
|
6
|
+
* `public.eql_v3_double_ord_ore` — ordering domain.
|
|
7
7
|
*
|
|
8
8
|
* Operators: `=` `<>` `<` `<=` `>` `>=`. Required keys: `v` `i` `c` `ob`.
|
|
9
9
|
*/
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import type { Identifier } from "./Identifier";
|
|
2
|
+
import type { OreBlock256 } from "./OreBlock256";
|
|
3
|
+
import type { SchemaVersion } from "./SchemaVersion";
|
|
4
|
+
/**
|
|
5
|
+
* `eql_v3.query_double_ord_ore` — ordering domain query operand.
|
|
6
|
+
*
|
|
7
|
+
* Operators: `=` `<>` `<` `<=` `>` `>=`. Required keys: `v` `i` `ob`.
|
|
8
|
+
*/
|
|
9
|
+
export type DoubleOrdOreQuery = {
|
|
10
|
+
v: SchemaVersion;
|
|
11
|
+
i: Identifier;
|
|
12
|
+
ob: OreBlock256;
|
|
13
|
+
};
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import type { Identifier } from "./Identifier";
|
|
2
|
+
import type { OpeCllw } from "./OpeCllw";
|
|
3
|
+
import type { SchemaVersion } from "./SchemaVersion";
|
|
4
|
+
/**
|
|
5
|
+
* `eql_v3.query_double_ord` — ordering domain query operand.
|
|
6
|
+
*
|
|
7
|
+
* Operators: `=` `<>` `<` `<=` `>` `>=`. Required keys: `v` `i` `op`.
|
|
8
|
+
*/
|
|
9
|
+
export type DoubleOrdQuery = {
|
|
10
|
+
v: SchemaVersion;
|
|
11
|
+
i: Identifier;
|
|
12
|
+
op: OpeCllw;
|
|
13
|
+
};
|
|
@@ -2,7 +2,7 @@ import type { Ciphertext } from "./Ciphertext";
|
|
|
2
2
|
import type { Identifier } from "./Identifier";
|
|
3
3
|
import type { SchemaVersion } from "./SchemaVersion";
|
|
4
4
|
/**
|
|
5
|
-
* `
|
|
5
|
+
* `public.eql_v3_integer` — storage-only domain.
|
|
6
6
|
*
|
|
7
7
|
* Operators: none. Required keys: `v` `i` `c`.
|
|
8
8
|
*/
|
|
@@ -3,7 +3,7 @@ import type { Hmac256 } from "./Hmac256";
|
|
|
3
3
|
import type { Identifier } from "./Identifier";
|
|
4
4
|
import type { SchemaVersion } from "./SchemaVersion";
|
|
5
5
|
/**
|
|
6
|
-
* `
|
|
6
|
+
* `public.eql_v3_integer_eq` — equality domain.
|
|
7
7
|
*
|
|
8
8
|
* Operators: `=` `<>`. Required keys: `v` `i` `c` `hm`.
|
|
9
9
|
*/
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import type { Hmac256 } from "./Hmac256";
|
|
2
|
+
import type { Identifier } from "./Identifier";
|
|
3
|
+
import type { SchemaVersion } from "./SchemaVersion";
|
|
4
|
+
/**
|
|
5
|
+
* `eql_v3.query_integer_eq` — equality domain query operand.
|
|
6
|
+
*
|
|
7
|
+
* Operators: `=` `<>`. Required keys: `v` `i` `hm`.
|
|
8
|
+
*/
|
|
9
|
+
export type IntegerEqQuery = {
|
|
10
|
+
v: SchemaVersion;
|
|
11
|
+
i: Identifier;
|
|
12
|
+
hm: Hmac256;
|
|
13
|
+
};
|
|
@@ -1,15 +1,15 @@
|
|
|
1
1
|
import type { Ciphertext } from "./Ciphertext";
|
|
2
2
|
import type { Identifier } from "./Identifier";
|
|
3
|
-
import type {
|
|
3
|
+
import type { OpeCllw } from "./OpeCllw";
|
|
4
4
|
import type { SchemaVersion } from "./SchemaVersion";
|
|
5
5
|
/**
|
|
6
|
-
* `
|
|
6
|
+
* `public.eql_v3_integer_ord` — ordering domain.
|
|
7
7
|
*
|
|
8
|
-
* Operators: `=` `<>` `<` `<=` `>` `>=`. Required keys: `v` `i` `c` `
|
|
8
|
+
* Operators: `=` `<>` `<` `<=` `>` `>=`. Required keys: `v` `i` `c` `op`.
|
|
9
9
|
*/
|
|
10
10
|
export type IntegerOrd = {
|
|
11
11
|
v: SchemaVersion;
|
|
12
12
|
i: Identifier;
|
|
13
13
|
c: Ciphertext;
|
|
14
|
-
|
|
14
|
+
op: OpeCllw;
|
|
15
15
|
};
|
|
@@ -3,7 +3,7 @@ import type { Identifier } from "./Identifier";
|
|
|
3
3
|
import type { OpeCllw } from "./OpeCllw";
|
|
4
4
|
import type { SchemaVersion } from "./SchemaVersion";
|
|
5
5
|
/**
|
|
6
|
-
* `
|
|
6
|
+
* `public.eql_v3_integer_ord_ope` — ordering domain.
|
|
7
7
|
*
|
|
8
8
|
* Operators: `=` `<>` `<` `<=` `>` `>=`. Required keys: `v` `i` `c` `op`.
|
|
9
9
|
*/
|