@vibeorm/schema 2.0.0-alpha.7 → 2.0.0-alpha.8

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -19,7 +19,7 @@ Most users never install this directly — it ships as a dependency of [`vibeorm
19
19
  - **Dialect identity**: the `Provider` and `Dialect` types, and the `DialectCapabilities` / `FullTextEngine` shapes. The capability *tables* themselves live in [`@vibeorm/sql`](https://github.com/vibeorm/vibeorm/tree/master/packages/sql); this package only fixes their shape.
20
20
  - **Errors**: `VibeError`, the `VibeErrorCode` union, the `VIBE_ERROR_CODES` list, and the constructors `internalError` and `unsupportedCapability`. Every error VibeORM throws is a `VibeError` with a stable `code`, so callers branch on codes and never on message text.
21
21
  - **Reserved names**: `RESERVED_CLIENT_NAMES`, `RESERVED_DELEGATE_NAMES`, `isReservedClientName`, `isReservedDelegateName` — the collision guard between user models and the client surface.
22
- - **The implicit many-to-many rule**: `implicitJoinTable` and `ImplicitJoinTable`. One shared definition of the join table an implicit m2m relation maps to, used by the parser and by migrate.
22
+ - **The implicit many-to-many rule**: `implicitJoinTable` and `ImplicitJoinTable`. One shared definition of the join table an implicit m2m relation maps to, used by the parser and by migrate. Self relations are refused rather than supported (`validateSchemaIR` rule `implicit-self-many-to-many`): one model name on both ends means both relation fields would own column `"A"`. The function still derives a self join table's NAME, because introspection and the migration differ must recognise one that already exists in a database.
23
23
  - **The extension framework**: `defineExtension`, `buildExtensionRegistry`, `extensionDeclarations`, `mergeExtensionDeclarations`, `extensionManifestEntry`, `extensionOptionsHash`, `EMPTY_EXTENSION_REGISTRY`, and the `VibeExtension` / `ExtensionRegistry` types.
24
24
 
25
25
  ## The error codes
@@ -1,13 +1,16 @@
1
1
  /**
2
2
  * Dialect capability shape.
3
3
  *
4
- * The concrete per-dialect tables live with the dialect implementations in
5
- * @vibeorm/sql (and are snapshot-tested there). Runtime, migrate, generator and
6
- * the E2E harness all consume the SAME object — so what we claim, we test.
4
+ * Tables live here so structural validation can refuse unsupported features
5
+ * without depending on SQL. @vibeorm/sql re-exports these SAME frozen objects;
6
+ * runtime, migrate, generator and tooling share their identity.
7
7
  */
8
+ import type { Dialect } from "./ir.ts";
8
9
  /** Full-text engines the `search` extension can target. */
9
10
  export type FullTextEngine = "bm25" | "tsvector" | "fts5" | "fulltext";
10
11
  export type DialectCapabilities = {
12
+ /** Native database row policies; PGlite additionally needs a verified restricted role. */
13
+ readonly nativeRowLevelSecurity: boolean;
11
14
  /** INSERT/UPDATE/DELETE ... RETURNING. False ⇒ insertId + re-select fallback. */
12
15
  readonly returning: boolean;
13
16
  /** Native scalar array columns (String[], Int[], ...). */
@@ -35,4 +38,8 @@ export type DialectCapabilities = {
35
38
  /** Full-text engines available on this dialect (first = preferred). */
36
39
  readonly fullTextEngines: readonly FullTextEngine[];
37
40
  };
41
+ export declare const POSTGRES_CAPABILITIES: DialectCapabilities;
42
+ export declare const SQLITE_CAPABILITIES: DialectCapabilities;
43
+ export declare const MYSQL_CAPABILITIES: DialectCapabilities;
44
+ export declare const DIALECT_CAPABILITIES: Readonly<Record<Dialect, DialectCapabilities>>;
38
45
  //# sourceMappingURL=capabilities.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"capabilities.d.ts","sourceRoot":"","sources":["../src/capabilities.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAIH,2DAA2D;AAC3D,MAAM,MAAM,cAAc,GAAG,MAAM,GAAG,UAAU,GAAG,MAAM,GAAG,UAAU,CAAC;AAIvE,MAAM,MAAM,mBAAmB,GAAG;IAChC,iFAAiF;IACjF,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAC;IAC5B,0DAA0D;IAC1D,QAAQ,CAAC,YAAY,EAAE,OAAO,CAAC;IAC/B,4DAA4D;IAC5D,QAAQ,CAAC,WAAW,EAAE,OAAO,CAAC;IAC9B,oEAAoE;IACpE,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC;IACxB,4DAA4D;IAC5D,QAAQ,CAAC,WAAW,EAAE,OAAO,CAAC;IAC9B,0BAA0B;IAC1B,QAAQ,CAAC,UAAU,EAAE,OAAO,CAAC;IAC7B,mCAAmC;IACnC,QAAQ,CAAC,cAAc,EAAE,OAAO,CAAC;IACjC,yEAAyE;IACzE,QAAQ,CAAC,wBAAwB,EAAE,OAAO,CAAC;IAC3C,iEAAiE;IACjE,QAAQ,CAAC,gBAAgB,EAAE,OAAO,CAAC;IACnC,kEAAkE;IAClE,QAAQ,CAAC,mBAAmB,EAAE,OAAO,CAAC;IACtC,iDAAiD;IACjD,QAAQ,CAAC,cAAc,EAAE,OAAO,CAAC;IACjC,2EAA2E;IAC3E,QAAQ,CAAC,YAAY,EAAE,OAAO,CAAC;IAC/B,uEAAuE;IACvE,QAAQ,CAAC,eAAe,EAAE,SAAS,cAAc,EAAE,CAAC;CACrD,CAAC"}
1
+ {"version":3,"file":"capabilities.d.ts","sourceRoot":"","sources":["../src/capabilities.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAIvC,2DAA2D;AAC3D,MAAM,MAAM,cAAc,GAAG,MAAM,GAAG,UAAU,GAAG,MAAM,GAAG,UAAU,CAAC;AAIvE,MAAM,MAAM,mBAAmB,GAAG;IAChC,0FAA0F;IAC1F,QAAQ,CAAC,sBAAsB,EAAE,OAAO,CAAC;IACzC,iFAAiF;IACjF,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAC;IAC5B,0DAA0D;IAC1D,QAAQ,CAAC,YAAY,EAAE,OAAO,CAAC;IAC/B,4DAA4D;IAC5D,QAAQ,CAAC,WAAW,EAAE,OAAO,CAAC;IAC9B,oEAAoE;IACpE,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC;IACxB,4DAA4D;IAC5D,QAAQ,CAAC,WAAW,EAAE,OAAO,CAAC;IAC9B,0BAA0B;IAC1B,QAAQ,CAAC,UAAU,EAAE,OAAO,CAAC;IAC7B,mCAAmC;IACnC,QAAQ,CAAC,cAAc,EAAE,OAAO,CAAC;IACjC,yEAAyE;IACzE,QAAQ,CAAC,wBAAwB,EAAE,OAAO,CAAC;IAC3C,iEAAiE;IACjE,QAAQ,CAAC,gBAAgB,EAAE,OAAO,CAAC;IACnC,kEAAkE;IAClE,QAAQ,CAAC,mBAAmB,EAAE,OAAO,CAAC;IACtC,iDAAiD;IACjD,QAAQ,CAAC,cAAc,EAAE,OAAO,CAAC;IACjC,2EAA2E;IAC3E,QAAQ,CAAC,YAAY,EAAE,OAAO,CAAC;IAC/B,uEAAuE;IACvE,QAAQ,CAAC,eAAe,EAAE,SAAS,cAAc,EAAE,CAAC;CACrD,CAAC;AAIF,eAAO,MAAM,qBAAqB,EAAE,mBAelC,CAAC;AAEH,eAAO,MAAM,mBAAmB,EAAE,mBAehC,CAAC;AAEH,eAAO,MAAM,kBAAkB,EAAE,mBAe/B,CAAC;AAEH,eAAO,MAAM,oBAAoB,EAAE,QAAQ,CAAC,MAAM,CAAC,OAAO,EAAE,mBAAmB,CAAC,CAI9E,CAAC"}
package/dist/errors.d.ts CHANGED
@@ -15,6 +15,13 @@ export declare const VIBE_ERROR_CODES: readonly [
15
15
  "VIBE_FK_VIOLATION",
16
16
  /** Input failed validation before reaching the database. */
17
17
  "VIBE_VALIDATION",
18
+ /**
19
+ * A STORED value violates the schema's invariant on its way out of the
20
+ * database — e.g. a string-backed enum column holding a non-member written
21
+ * by raw SQL or another writer. Distinct from VIBE_VALIDATION (bad input):
22
+ * the row is what is wrong, and VibeORM refuses to return it falsely typed.
23
+ */
24
+ "VIBE_DATA_INVALID",
18
25
  /** Schema IR failed structural validation. */
19
26
  "VIBE_SCHEMA_INVALID",
20
27
  /** Feature requested on a dialect that does not support it. */
@@ -29,6 +36,10 @@ export declare const VIBE_ERROR_CODES: readonly [
29
36
  "VIBE_TRANSACTION",
30
37
  /** A tenant-scoped handle ($scoped) refused a call it cannot make safe. */
31
38
  "VIBE_SCOPED",
39
+ /** Native RLS identity is missing, invalid, expired or conflicting. */
40
+ "VIBE_RLS_CONTEXT",
41
+ /** SQLSTATE 42501: insufficient privilege, including policy WITH CHECK failure. */
42
+ "VIBE_PERMISSION_DENIED",
32
43
  /** Driver/connection failure not mapped to a more specific code. */
33
44
  "VIBE_ADAPTER",
34
45
  /** Invariant broken inside VibeORM itself — always a bug, please report. */
@@ -59,11 +70,37 @@ export declare function unsupportedCapability(params: {
59
70
  feature: string;
60
71
  hint?: string;
61
72
  }): VibeError;
73
+ /**
74
+ * A stored value failed the schema's invariant when a row was materialized —
75
+ * lane 2B throws this from the codec path for a string-backed enum column
76
+ * holding a non-member. Carries model/field/enum and a bounded description of
77
+ * the offending value ONLY; it never accepts, and so never exposes, the rest
78
+ * of the row.
79
+ */
80
+ export declare function invalidStoredData(params: {
81
+ model: string;
82
+ field: string;
83
+ /** The enum the column is typed with, when the invariant is enum membership. */
84
+ enum?: string;
85
+ /** The offending stored value — strings truncated, non-strings reduced to their type. */
86
+ value: unknown;
87
+ }): VibeError;
62
88
  /** Internal invariant violation — always indicates a VibeORM bug. */
63
89
  export declare function internalError(params: {
64
90
  message: string;
65
91
  meta?: Record<string, unknown>;
66
92
  }): VibeError;
93
+ /** Stable lifecycle categories; metadata never includes identity values. */
94
+ export declare const RLS_CONTEXT_REASONS: readonly ["missing", "invalid", "expired", "conflicting"];
95
+ export type RlsContextReason = (typeof RLS_CONTEXT_REASONS)[number];
96
+ /** Native RLS binding/lifecycle failure, distinct from database permissions. */
97
+ export declare class RlsContextError extends VibeError {
98
+ readonly reason: RlsContextReason;
99
+ constructor(params: {
100
+ reason: RlsContextReason;
101
+ key?: string;
102
+ });
103
+ }
67
104
  /**
68
105
  * Why a `$scoped` handle refused a call — a STABLE machine-readable set.
69
106
  * Conformance vectors (and the sibling Prisma binding) match on these strings,
@@ -1 +1 @@
1
- {"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAIH,eAAO,MAAM,gBAAgB;AAC3B,6EAA6E;AAC7E,gBAAgB;AAChB,mDAAmD;AACnD,uBAAuB;AACvB,wDAAwD;AACxD,mBAAmB;AACnB,4DAA4D;AAC5D,iBAAiB;AACjB,8CAA8C;AAC9C,qBAAqB;AACrB,+DAA+D;AAC/D,6BAA6B;AAC7B,6EAA6E;AAC7E,mBAAmB;AACnB,6DAA6D;AAC7D,aAAa;AACb,gCAAgC;AAChC,gBAAgB;AAChB,+EAA+E;AAC/E,kBAAkB;AAClB,2EAA2E;AAC3E,aAAa;AACb,oEAAoE;AACpE,cAAc;AACd,4EAA4E;AAC5E,eAAe,CACP,CAAC;AAEX,MAAM,MAAM,aAAa,GAAG,CAAC,OAAO,gBAAgB,CAAC,CAAC,MAAM,CAAC,CAAC;AAI9D;;;;;;;;GAQG;AACH,qBAAa,SAAU,SAAQ,KAAK;IAClC,QAAQ,CAAC,IAAI,EAAE,aAAa,CAAC;IAC7B,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;IAEjD,YAAY,MAAM,EAAE;QAClB,IAAI,EAAE,aAAa,CAAC;QACpB,OAAO,EAAE,MAAM,CAAC;QAChB,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QAC/B,KAAK,CAAC,EAAE,OAAO,CAAC;KACjB,EAKA;CACF;AAID,+EAA+E;AAC/E,wBAAgB,qBAAqB,CAAC,MAAM,EAAE;IAC5C,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf,GAAG,SAAS,CAOZ;AAED,qEAAqE;AACrE,wBAAgB,aAAa,CAAC,MAAM,EAAE;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;CAAE,GAAG,SAAS,CAMpG;AAID;;;;GAIG;AACH,eAAO,MAAM,sBAAsB;AACjC,qFAAqF;AACrF,iBAAiB;AACjB,8EAA8E;AAC9E,oBAAoB;AACpB,6DAA6D;AAC7D,eAAe;AACf,iDAAiD;AACjD,gBAAgB;AAChB,8FAA8F;AAC9F,sBAAsB;AACtB,gEAAgE;AAChE,kBAAkB;AAClB,wFAAwF;AACxF,uBAAuB;AACvB,mEAAmE;AACnE,eAAe;AACf,qFAAqF;AACrF,qBAAqB;AACrB,0EAA0E;AAC1E,YAAY;AACZ,yEAAyE;AACzE,eAAe;AACf,8EAA8E;AAC9E,mBAAmB;AACnB,uFAAuF;AACvF,yBAAyB;AACzB,8FAA8F;AAC9F,kBAAkB;AAClB,sFAAsF;AACtF,gBAAgB;AAChB,uFAAuF;AACvF,4BAA4B;AAC5B,gFAAgF;AAChF,0BAA0B,CAClB,CAAC;AAEX,MAAM,MAAM,mBAAmB,GAAG,CAAC,OAAO,sBAAsB,CAAC,CAAC,MAAM,CAAC,CAAC;AAE1E;;;;GAIG;AACH,qBAAa,gBAAiB,SAAQ,SAAS;IAC7C,2EAA2E;IAC3E,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,0FAA0F;IAC1F,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,MAAM,EAAE,mBAAmB,CAAC;IAErC,YAAY,MAAM,EAAE;QAClB,KAAK,EAAE,MAAM,CAAC;QACd,IAAI,EAAE,MAAM,CAAC;QACb,MAAM,EAAE,mBAAmB,CAAC;QAC5B,OAAO,EAAE,MAAM,CAAC;QAChB,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;KAChC,EAUA;CACF"}
1
+ {"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAIH,eAAO,MAAM,gBAAgB;AAC3B,6EAA6E;AAC7E,gBAAgB;AAChB,mDAAmD;AACnD,uBAAuB;AACvB,wDAAwD;AACxD,mBAAmB;AACnB,4DAA4D;AAC5D,iBAAiB;AACjB;;;;;GAKG;AACH,mBAAmB;AACnB,8CAA8C;AAC9C,qBAAqB;AACrB,+DAA+D;AAC/D,6BAA6B;AAC7B,6EAA6E;AAC7E,mBAAmB;AACnB,6DAA6D;AAC7D,aAAa;AACb,gCAAgC;AAChC,gBAAgB;AAChB,+EAA+E;AAC/E,kBAAkB;AAClB,2EAA2E;AAC3E,aAAa;AACb,uEAAuE;AACvE,kBAAkB;AAClB,mFAAmF;AACnF,wBAAwB;AACxB,oEAAoE;AACpE,cAAc;AACd,4EAA4E;AAC5E,eAAe,CACP,CAAC;AAEX,MAAM,MAAM,aAAa,GAAG,CAAC,OAAO,gBAAgB,CAAC,CAAC,MAAM,CAAC,CAAC;AAI9D;;;;;;;;GAQG;AACH,qBAAa,SAAU,SAAQ,KAAK;IAClC,QAAQ,CAAC,IAAI,EAAE,aAAa,CAAC;IAC7B,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;IAEjD,YAAY,MAAM,EAAE;QAClB,IAAI,EAAE,aAAa,CAAC;QACpB,OAAO,EAAE,MAAM,CAAC;QAChB,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QAC/B,KAAK,CAAC,EAAE,OAAO,CAAC;KACjB,EAKA;CACF;AAID,+EAA+E;AAC/E,wBAAgB,qBAAqB,CAAC,MAAM,EAAE;IAC5C,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf,GAAG,SAAS,CAOZ;AAoBD;;;;;;GAMG;AACH,wBAAgB,iBAAiB,CAAC,MAAM,EAAE;IACxC,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,gFAAgF;IAChF,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,yFAAyF;IACzF,KAAK,EAAE,OAAO,CAAC;CAChB,GAAG,SAAS,CASZ;AAED,qEAAqE;AACrE,wBAAgB,aAAa,CAAC,MAAM,EAAE;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;CAAE,GAAG,SAAS,CAMpG;AAID,4EAA4E;AAC5E,eAAO,MAAM,mBAAmB,EAAE,SAAS,CAAC,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,aAAa,CAExF,CAAC;AAEH,MAAM,MAAM,gBAAgB,GAAG,CAAC,OAAO,mBAAmB,CAAC,CAAC,MAAM,CAAC,CAAC;AAEpE,gFAAgF;AAChF,qBAAa,eAAgB,SAAQ,SAAS;IAC5C,QAAQ,CAAC,MAAM,EAAE,gBAAgB,CAAC;IAElC,YAAY,MAAM,EAAE;QAAE,MAAM,EAAE,gBAAgB,CAAC;QAAC,GAAG,CAAC,EAAE,MAAM,CAAA;KAAE,EAQ7D;CACF;AAID;;;;GAIG;AACH,eAAO,MAAM,sBAAsB;AACjC,qFAAqF;AACrF,iBAAiB;AACjB,8EAA8E;AAC9E,oBAAoB;AACpB,6DAA6D;AAC7D,eAAe;AACf,iDAAiD;AACjD,gBAAgB;AAChB,8FAA8F;AAC9F,sBAAsB;AACtB,gEAAgE;AAChE,kBAAkB;AAClB,wFAAwF;AACxF,uBAAuB;AACvB,mEAAmE;AACnE,eAAe;AACf,qFAAqF;AACrF,qBAAqB;AACrB,0EAA0E;AAC1E,YAAY;AACZ,yEAAyE;AACzE,eAAe;AACf,8EAA8E;AAC9E,mBAAmB;AACnB,uFAAuF;AACvF,yBAAyB;AACzB,8FAA8F;AAC9F,kBAAkB;AAClB,sFAAsF;AACtF,gBAAgB;AAChB,uFAAuF;AACvF,4BAA4B;AAC5B,gFAAgF;AAChF,0BAA0B,CAClB,CAAC;AAEX,MAAM,MAAM,mBAAmB,GAAG,CAAC,OAAO,sBAAsB,CAAC,CAAC,MAAM,CAAC,CAAC;AAE1E;;;;GAIG;AACH,qBAAa,gBAAiB,SAAQ,SAAS;IAC7C,2EAA2E;IAC3E,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,0FAA0F;IAC1F,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,MAAM,EAAE,mBAAmB,CAAC;IAErC,YAAY,MAAM,EAAE;QAClB,KAAK,EAAE,MAAM,CAAC;QACd,IAAI,EAAE,MAAM,CAAC;QACb,MAAM,EAAE,mBAAmB,CAAC;QAC5B,OAAO,EAAE,MAAM,CAAC;QAChB,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;KAChC,EAUA;CACF"}
package/dist/index.d.ts CHANGED
@@ -2,18 +2,24 @@
2
2
  * @vibeorm/schema — canonical Schema IR, validation, dialect/capability types,
3
3
  * and the VibeError contract for VibeORM v2.
4
4
  */
5
- export { DIALECTS, isEnumType, providerToDialect } from "./ir.ts";
6
- export type { CascadeAction, DatasourceIR, DefaultValueIR, Dialect, EnumIR, ExtensionDeclIR, FieldIR, FieldType, IndexFieldIR, CheckIR, IndexIR, IndexKind, ModelIR, Provider, RelationIR, RelationType, ScalarType, SchemaIR, } from "./ir.ts";
5
+ export { DIALECTS, ENUM_STORAGES, enumStorageOf, isEnumType, providerToDialect } from "./ir.ts";
6
+ export type { CascadeAction, DatasourceIR, DefaultValueIR, Dialect, EnumIR, EnumStorage, ExtensionDeclIR, FieldIR, FieldType, IndexFieldIR, CheckIR, IndexIR, IndexKind, ModelIR, Provider, RelationIR, RelationType, ScalarType, SchemaIR, } from "./ir.ts";
7
7
  export type { DialectCapabilities, FullTextEngine } from "./capabilities.ts";
8
- export { SCOPED_REFUSAL_REASONS, ScopedQueryError, VIBE_ERROR_CODES, VibeError, internalError, unsupportedCapability, } from "./errors.ts";
8
+ export { SCOPED_REFUSAL_REASONS, ScopedQueryError, VIBE_ERROR_CODES, VibeError, internalError, invalidStoredData, unsupportedCapability, } from "./errors.ts";
9
9
  export type { ScopedRefusalReason, VibeErrorCode } from "./errors.ts";
10
+ export { decodePrismaString, encodePrismaString, exactIntegerLiteral } from "./prisma-literal.ts";
10
11
  export { RESERVED_CLIENT_NAMES, RESERVED_DELEGATE_NAMES, isReservedClientName, isReservedDelegateName, } from "./reserved.ts";
11
12
  export { EMPTY_EXTENSION_REGISTRY, buildExtensionRegistry, defineExtension, extensionDeclarations, extensionManifestEntry, extensionOptionsHash, mergeExtensionDeclarations, } from "./extension.ts";
12
13
  export type { ExtensionArtifact, ExtensionArtifactOwner, ExtensionAttributeArgs, ExtensionAttributeValue, ExtensionClientContribution, ExtensionClientPlane, ExtensionDoctorCheck, ExtensionDoctorHook, ExtensionDoctorReport, ExtensionFieldType, ExtensionImportSpec, ExtensionManifestEntry, ExtensionMigratePlane, ExtensionModelAttribute, ExtensionModelTypeNames, ExtensionRegistry, ExtensionRuntimePlane, ExtensionSchemaContext, ExtensionSqlExecutor, ExtensionSqlPlane, ExtensionWhereOperator, SqlFragmentPart, SqlFragmentSpec, VibeExtension, } from "./extension.ts";
13
14
  export { buildComputedManifest, validateComputedConfig } from "./computed.ts";
14
15
  export type { ComputedConfig, ComputedFieldSpec, ComputedManifestEntry } from "./computed.ts";
15
- export { assertValidSchemaIR, validateSchemaIR } from "./validate.ts";
16
+ export { RESERVED_ENUM_NAMES, assertValidSchemaIR, validateSchemaIR } from "./validate.ts";
16
17
  export type { ValidationIssue } from "./validate.ts";
17
18
  export { implicitJoinTable } from "./m2m.ts";
18
19
  export type { ImplicitJoinTable } from "./m2m.ts";
20
+ export type { NativeRlsIR, RlsContextFieldIR, RlsContextIR, RlsContextRefIR, RlsContextScalar, RlsPolicyIR } from "./ir.ts";
21
+ export { DIALECT_CAPABILITIES, MYSQL_CAPABILITIES, POSTGRES_CAPABILITIES, SQLITE_CAPABILITIES } from "./capabilities.ts";
22
+ export { RLS_CONTEXT_REASONS, RlsContextError } from "./errors.ts";
23
+ export type { RlsContextReason } from "./errors.ts";
24
+ export { isImplicitManyToManyRelation, validateRlsContextIR } from "./validate.ts";
19
25
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAIH,OAAO,EAAE,QAAQ,EAAE,UAAU,EAAE,iBAAiB,EAAE,MAAM,SAAS,CAAC;AAClE,YAAY,EACV,aAAa,EACb,YAAY,EACZ,cAAc,EACd,OAAO,EACP,MAAM,EACN,eAAe,EACf,OAAO,EACP,SAAS,EACT,YAAY,EACZ,OAAO,EACP,OAAO,EACP,SAAS,EACT,OAAO,EACP,QAAQ,EACR,UAAU,EACV,YAAY,EACZ,UAAU,EACV,QAAQ,GACT,MAAM,SAAS,CAAC;AAIjB,YAAY,EAAE,mBAAmB,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAI7E,OAAO,EACL,sBAAsB,EACtB,gBAAgB,EAChB,gBAAgB,EAChB,SAAS,EACT,aAAa,EACb,qBAAqB,GACtB,MAAM,aAAa,CAAC;AACrB,YAAY,EAAE,mBAAmB,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAItE,OAAO,EACL,qBAAqB,EACrB,uBAAuB,EACvB,oBAAoB,EACpB,sBAAsB,GACvB,MAAM,eAAe,CAAC;AAIvB,OAAO,EACL,wBAAwB,EACxB,sBAAsB,EACtB,eAAe,EACf,qBAAqB,EACrB,sBAAsB,EACtB,oBAAoB,EACpB,0BAA0B,GAC3B,MAAM,gBAAgB,CAAC;AACxB,YAAY,EACV,iBAAiB,EACjB,sBAAsB,EACtB,sBAAsB,EACtB,uBAAuB,EACvB,2BAA2B,EAC3B,oBAAoB,EACpB,oBAAoB,EACpB,mBAAmB,EACnB,qBAAqB,EACrB,kBAAkB,EAClB,mBAAmB,EACnB,sBAAsB,EACtB,qBAAqB,EACrB,uBAAuB,EACvB,uBAAuB,EACvB,iBAAiB,EACjB,qBAAqB,EACrB,sBAAsB,EACtB,oBAAoB,EACpB,iBAAiB,EACjB,sBAAsB,EACtB,eAAe,EACf,eAAe,EACf,aAAa,GACd,MAAM,gBAAgB,CAAC;AAIxB,OAAO,EAAE,qBAAqB,EAAE,sBAAsB,EAAE,MAAM,eAAe,CAAC;AAC9E,YAAY,EAAE,cAAc,EAAE,iBAAiB,EAAE,qBAAqB,EAAE,MAAM,eAAe,CAAC;AAI9F,OAAO,EAAE,mBAAmB,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AACtE,YAAY,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAIrD,OAAO,EAAE,iBAAiB,EAAE,MAAM,UAAU,CAAC;AAC7C,YAAY,EAAE,iBAAiB,EAAE,MAAM,UAAU,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAIH,OAAO,EAAE,QAAQ,EAAE,aAAa,EAAE,aAAa,EAAE,UAAU,EAAE,iBAAiB,EAAE,MAAM,SAAS,CAAC;AAChG,YAAY,EACV,aAAa,EACb,YAAY,EACZ,cAAc,EACd,OAAO,EACP,MAAM,EACN,WAAW,EACX,eAAe,EACf,OAAO,EACP,SAAS,EACT,YAAY,EACZ,OAAO,EACP,OAAO,EACP,SAAS,EACT,OAAO,EACP,QAAQ,EACR,UAAU,EACV,YAAY,EACZ,UAAU,EACV,QAAQ,GACT,MAAM,SAAS,CAAC;AAIjB,YAAY,EAAE,mBAAmB,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAI7E,OAAO,EACL,sBAAsB,EACtB,gBAAgB,EAChB,gBAAgB,EAChB,SAAS,EACT,aAAa,EACb,iBAAiB,EACjB,qBAAqB,GACtB,MAAM,aAAa,CAAC;AACrB,YAAY,EAAE,mBAAmB,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAItE,OAAO,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAIlG,OAAO,EACL,qBAAqB,EACrB,uBAAuB,EACvB,oBAAoB,EACpB,sBAAsB,GACvB,MAAM,eAAe,CAAC;AAIvB,OAAO,EACL,wBAAwB,EACxB,sBAAsB,EACtB,eAAe,EACf,qBAAqB,EACrB,sBAAsB,EACtB,oBAAoB,EACpB,0BAA0B,GAC3B,MAAM,gBAAgB,CAAC;AACxB,YAAY,EACV,iBAAiB,EACjB,sBAAsB,EACtB,sBAAsB,EACtB,uBAAuB,EACvB,2BAA2B,EAC3B,oBAAoB,EACpB,oBAAoB,EACpB,mBAAmB,EACnB,qBAAqB,EACrB,kBAAkB,EAClB,mBAAmB,EACnB,sBAAsB,EACtB,qBAAqB,EACrB,uBAAuB,EACvB,uBAAuB,EACvB,iBAAiB,EACjB,qBAAqB,EACrB,sBAAsB,EACtB,oBAAoB,EACpB,iBAAiB,EACjB,sBAAsB,EACtB,eAAe,EACf,eAAe,EACf,aAAa,GACd,MAAM,gBAAgB,CAAC;AAIxB,OAAO,EAAE,qBAAqB,EAAE,sBAAsB,EAAE,MAAM,eAAe,CAAC;AAC9E,YAAY,EAAE,cAAc,EAAE,iBAAiB,EAAE,qBAAqB,EAAE,MAAM,eAAe,CAAC;AAI9F,OAAO,EAAE,mBAAmB,EAAE,mBAAmB,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AAC3F,YAAY,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAIrD,OAAO,EAAE,iBAAiB,EAAE,MAAM,UAAU,CAAC;AAC7C,YAAY,EAAE,iBAAiB,EAAE,MAAM,UAAU,CAAC;AAIlD,YAAY,EAAE,WAAW,EAAE,iBAAiB,EAAE,YAAY,EAAE,eAAe,EAAE,gBAAgB,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAC5H,OAAO,EAAE,oBAAoB,EAAE,kBAAkB,EAAE,qBAAqB,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AACzH,OAAO,EAAE,mBAAmB,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AACnE,YAAY,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AACpD,OAAO,EAAE,4BAA4B,EAAE,oBAAoB,EAAE,MAAM,eAAe,CAAC"}