@xylex-group/athena 2.7.0 → 2.8.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.
Files changed (36) hide show
  1. package/README.md +210 -17
  2. package/dist/browser.cjs +1253 -401
  3. package/dist/browser.cjs.map +1 -1
  4. package/dist/browser.d.cts +8 -7
  5. package/dist/browser.d.ts +8 -7
  6. package/dist/browser.js +1247 -402
  7. package/dist/browser.js.map +1 -1
  8. package/dist/cli/index.cjs +1285 -451
  9. package/dist/cli/index.cjs.map +1 -1
  10. package/dist/cli/index.d.cts +3 -3
  11. package/dist/cli/index.d.ts +3 -3
  12. package/dist/cli/index.js +1285 -451
  13. package/dist/cli/index.js.map +1 -1
  14. package/dist/index.cjs +1921 -698
  15. package/dist/index.cjs.map +1 -1
  16. package/dist/index.d.cts +8 -7
  17. package/dist/index.d.ts +8 -7
  18. package/dist/index.js +1915 -699
  19. package/dist/index.js.map +1 -1
  20. package/dist/{model-form-AKYrgede.d.ts → model-form-DMed05gE.d.cts} +347 -82
  21. package/dist/{model-form-ehfqLuG7.d.cts → model-form-DXPlOnlI.d.ts} +347 -82
  22. package/dist/{pipeline-BUsR9XlO.d.ts → pipeline-CkMnhwPI.d.ts} +1 -1
  23. package/dist/{pipeline-BfCWSRYl.d.cts → pipeline-D4sJRKqN.d.cts} +1 -1
  24. package/dist/{react-email-BQzmXBDE.d.cts → react-email-DZhDDlEl.d.cts} +121 -8
  25. package/dist/{react-email-BrVRp80B.d.ts → react-email-Lrz9A-BW.d.ts} +121 -8
  26. package/dist/react.cjs +1 -1
  27. package/dist/react.cjs.map +1 -1
  28. package/dist/react.d.cts +4 -4
  29. package/dist/react.d.ts +4 -4
  30. package/dist/react.js +1 -1
  31. package/dist/react.js.map +1 -1
  32. package/dist/{types-BSIsyss1.d.cts → types-BzY6fETM.d.ts} +47 -5
  33. package/dist/{types-t_TVqnmp.d.ts → types-CAtTGGoz.d.cts} +47 -5
  34. package/dist/{types-BsyRW49r.d.cts → types-vikz9YIO.d.cts} +23 -1
  35. package/dist/{types-BsyRW49r.d.ts → types-vikz9YIO.d.ts} +23 -1
  36. package/package.json +3 -2
@@ -1,4 +1,4 @@
1
- import { i as AthenaJsonValue, a as AthenaGatewayCallOptions, g as AthenaJsonObject, j as AthenaRpcCallOptions, W as AthenaGatewayEndpointPath, X as AthenaGatewayMethod, Y as AthenaConditionValue, Z as AthenaConditionArrayValue, R as RegistryDef, D as DatabaseDef, F as SchemaDef, J as AnyModelDef, x as ModelDef, C as ModelRelationMetadata, E as RowOf, o as BackendConfig, p as BackendType, e as AthenaGatewayErrorDetails, A as AthenaConditionCastType, _ as AthenaConditionOperator, b as AthenaGatewayConnectionOptions, c as AthenaGatewayConnectionResult, d as AthenaGatewayErrorCode, P as AthenaGatewayResponse, q as InsertOf, U as UpdateOf } from './types-BsyRW49r.cjs';
1
+ import { j as AthenaModelTarget, H as RowOf, r as InsertOf, U as UpdateOf, i as AthenaJsonValue, a as AthenaGatewayCallOptions, g as AthenaJsonObject, k as AthenaRpcCallOptions, Z as AthenaGatewayEndpointPath, _ as AthenaGatewayMethod, $ as AthenaConditionValue, a0 as AthenaConditionArrayValue, R as RegistryDef, D as DatabaseDef, J as SchemaDef, N as AnyModelDef, C as ModelDef, G as ModelRelationMetadata, a1 as AthenaGatewayCondition, a2 as AthenaSortBy, V as AthenaFetchPayload, X as AthenaInsertPayload, Y as AthenaUpdatePayload, Q as AthenaDeletePayload, l as AthenaRpcFilter, o as AthenaRpcPayload, p as BackendConfig, q as BackendType, e as AthenaGatewayErrorDetails, A as AthenaConditionCastType, a3 as AthenaConditionOperator, b as AthenaGatewayConnectionOptions, c as AthenaGatewayConnectionResult, d as AthenaGatewayErrorCode, W as AthenaGatewayResponse } from './types-vikz9YIO.js';
2
2
 
3
3
  type AthenaAuthMethod = 'GET' | 'POST';
4
4
  type AthenaAuthCredentials = 'omit' | 'same-origin' | 'include';
@@ -1396,6 +1396,10 @@ declare class AthenaError extends Error {
1396
1396
  */
1397
1397
  declare function isOk<T>(result: AthenaResult<T>): boolean;
1398
1398
  /**
1399
+ * @deprecated Prefer `result.error` on failed `AthenaResult` values and the
1400
+ * structured fields already attached to thrown SDK errors. This helper is
1401
+ * retained for compatibility with mixed unknown inputs.
1402
+ *
1399
1403
  * Normalizes any Athena failure shape into a stable, typed error envelope.
1400
1404
  *
1401
1405
  * Accepts `AthenaResult`, `AthenaGatewayError`, native `Error`, or unknown values.
@@ -1466,23 +1470,43 @@ declare function assertInt(value: unknown, label?: string, options?: IntCoercion
1466
1470
  */
1467
1471
  declare function withRetry<T>(config: RetryConfig, fn: () => Promise<T>): Promise<T>;
1468
1472
 
1473
+ type Whitespace = ' ' | '\n' | '\r' | '\t';
1474
+ type TrimLeft<TValue extends string> = TValue extends `${Whitespace}${infer TRest}` ? TrimLeft<TRest> : TValue;
1475
+ type TrimRight<TValue extends string> = TValue extends `${infer TRest}${Whitespace}` ? TrimRight<TRest> : TValue;
1476
+ type Trim<TValue extends string> = TrimLeft<TrimRight<TValue>>;
1477
+ type KnownSelectColumnKey<Row> = Extract<keyof NonNullable<Row>, string>;
1478
+ type HasKnownSelectColumns<Row> = [KnownSelectColumnKey<Row>] extends [never] ? false : string extends KnownSelectColumnKey<Row> ? false : true;
1479
+ type HasComplexSelectTokenSyntax<TValue extends string> = TValue extends `${string}(${string}` ? true : TValue extends `${string})${string}` ? true : TValue extends `${string}.${string}` ? true : TValue extends `${string}"${string}` ? true : TValue extends `${string}'${string}` ? true : false;
1480
+ type ValidateAliasedBase<Row, TOriginal extends string, TBase extends string> = HasComplexSelectTokenSyntax<Trim<TBase>> extends true ? TOriginal : Trim<TBase> extends KnownSelectColumnKey<Row> ? TOriginal : never;
1481
+ type ValidateSelectToken<Row, TToken extends string> = Trim<TToken> extends infer TTrimmed extends string ? TTrimmed extends '' ? never : TTrimmed extends '*' ? TTrimmed : TTrimmed extends `${string}:${infer TBase}` ? ValidateAliasedBase<Row, TTrimmed, TBase> : TTrimmed extends `${infer TBase} as ${string}` ? ValidateAliasedBase<Row, TTrimmed, TBase> : TTrimmed extends `${infer TBase} AS ${string}` ? ValidateAliasedBase<Row, TTrimmed, TBase> : HasComplexSelectTokenSyntax<TTrimmed> extends true ? TTrimmed : TTrimmed extends KnownSelectColumnKey<Row> ? TTrimmed : never : never;
1482
+ type ValidateSelectList<Row, TValue extends string> = string extends TValue ? TValue : HasComplexSelectTokenSyntax<TValue> extends true ? TValue : TValue extends `${infer THead},${infer TTail}` ? ValidateSelectToken<Row, THead> extends never ? never : ValidateSelectList<Row, TTail> extends never ? never : TValue : ValidateSelectToken<Row, TValue> extends never ? never : TValue;
1483
+ type ValidateSelectArray<Row, TValue extends readonly string[]> = string extends TValue[number] ? TValue : TValue extends readonly [
1484
+ infer THead extends string,
1485
+ ...infer TTail extends readonly string[]
1486
+ ] ? ValidateSelectToken<Row, THead> extends never ? never : ValidateSelectArray<Row, TTail> extends never ? never : TValue : TValue;
1487
+ type AthenaSelectInput = string | string[] | readonly string[];
1488
+ type AthenaValidatedSelectInput<Row, TValue extends AthenaSelectInput> = HasKnownSelectColumns<Row> extends true ? TValue extends string ? ValidateSelectList<Row, TValue> : TValue extends readonly string[] ? ValidateSelectArray<Row, TValue> : never : TValue;
1489
+ type AthenaTypecheckedColumnKey<Row, TEnabled extends boolean> = TEnabled extends true ? HasKnownSelectColumns<Row> extends true ? KnownSelectColumnKey<Row> : string : string;
1490
+
1469
1491
  type AthenaRowShape$2 = Record<string, AthenaJsonValue | undefined>;
1470
1492
  type AthenaUpsertOptions<Update> = AthenaGatewayCallOptions & {
1471
1493
  updateBody?: Update;
1472
1494
  onConflict?: string | string[];
1473
1495
  };
1474
- interface AthenaDbModule {
1475
- from<Row = AthenaRowShape$2, Insert = Partial<Row>, Update = Partial<Insert>>(table: string, options?: AthenaFromOptions): TableQueryBuilder<Row, Insert, Update>;
1476
- select<Row = AthenaRowShape$2, SelectedRow = Row>(table: string, columns?: string | string[], options?: AthenaGatewayCallOptions): SelectChain<Row, SelectedRow>;
1477
- insert<Row = AthenaRowShape$2, Insert = Partial<Row>>(table: string, values: Insert, options?: AthenaGatewayCallOptions): MutationQuery<Row>;
1478
- insert<Row = AthenaRowShape$2, Insert = Partial<Row>>(table: string, values: Insert[], options?: AthenaGatewayCallOptions): MutationQuery<Row[]>;
1479
- upsert<Row = AthenaRowShape$2, Insert = Partial<Row>, Update = Partial<Insert>>(table: string, values: Insert, options?: AthenaUpsertOptions<Update>): MutationQuery<Row>;
1480
- upsert<Row = AthenaRowShape$2, Insert = Partial<Row>, Update = Partial<Insert>>(table: string, values: Insert[], options?: AthenaUpsertOptions<Update>): MutationQuery<Row[]>;
1481
- update<Row = AthenaRowShape$2, Insert = Partial<Row>, Update = Partial<Insert>>(table: string, values: Update, options?: AthenaGatewayCallOptions): UpdateChain<Row>;
1496
+ interface AthenaDbModule<TStrict extends boolean = false> {
1497
+ from<TModel extends AthenaModelTarget>(model: TModel): TableQueryBuilder<RowOf<TModel>, InsertOf<TModel>, UpdateOf<TModel>, unknown, TStrict>;
1498
+ from<Row = AthenaRowShape$2, Insert = Partial<Row>, Update = Partial<Insert>>(table: string, options?: AthenaFromOptions): TableQueryBuilder<Row, Insert, Update, unknown, TStrict>;
1499
+ select<Row = AthenaRowShape$2>(table: string, options?: AthenaGatewayCallOptions): SelectChain<Row, Row, TStrict>;
1500
+ select(table: string, columns: AthenaSelectInput, options?: AthenaGatewayCallOptions): SelectChain<AthenaRowShape$2, AthenaRowShape$2, TStrict>;
1501
+ insert<Row = AthenaRowShape$2, Insert = Partial<Row>>(table: string, values: Insert, options?: AthenaGatewayCallOptions): MutationQuery<Row, Row, TStrict>;
1502
+ insert<Row = AthenaRowShape$2, Insert = Partial<Row>>(table: string, values: Insert[], options?: AthenaGatewayCallOptions): MutationQuery<Row[], Row, TStrict>;
1503
+ upsert<Row = AthenaRowShape$2, Insert = Partial<Row>, Update = Partial<Insert>>(table: string, values: Insert, options?: AthenaUpsertOptions<Update>): MutationQuery<Row, Row, TStrict>;
1504
+ upsert<Row = AthenaRowShape$2, Insert = Partial<Row>, Update = Partial<Insert>>(table: string, values: Insert[], options?: AthenaUpsertOptions<Update>): MutationQuery<Row[], Row, TStrict>;
1505
+ update<Row = AthenaRowShape$2, Insert = Partial<Row>, Update = Partial<Insert>>(table: string, values: Update, options?: AthenaGatewayCallOptions): UpdateChain<Row, TStrict>;
1482
1506
  delete<Row = AthenaRowShape$2>(table: string, options?: AthenaGatewayCallOptions & {
1483
1507
  resourceId?: string;
1484
- }): MutationQuery<Row | null>;
1485
- rpc<Row = unknown, Args extends AthenaJsonObject = AthenaJsonObject>(fn: string, args?: Args, options?: AthenaRpcCallOptions): RpcQueryBuilder<Row>;
1508
+ }): MutationQuery<Row | null, Row, TStrict>;
1509
+ rpc<Row = unknown, Args extends AthenaJsonObject = AthenaJsonObject>(fn: string, args?: Args, options?: AthenaRpcCallOptions): RpcQueryBuilder<Row, TStrict>;
1486
1510
  query<Row = unknown>(query: string, options?: AthenaGatewayCallOptions): Promise<AthenaResult<Row[]>>;
1487
1511
  }
1488
1512
 
@@ -2011,8 +2035,7 @@ interface StorageObjectFolderCreateRequest {
2011
2035
  bucket: string;
2012
2036
  prefix: string;
2013
2037
  }
2014
- interface StorageObjectFolderDeleteRequest extends StorageObjectFolderCreateRequest {
2015
- }
2038
+ type StorageObjectFolderDeleteRequest = StorageObjectFolderCreateRequest;
2016
2039
  interface StorageObjectFolderRenameRequest extends Omit<StorageObjectFolderCreateRequest, 'prefix'> {
2017
2040
  from_prefix: string;
2018
2041
  to_prefix: string;
@@ -2054,8 +2077,7 @@ interface StorageUpdateObjectRequest extends StorageObjectRequest {
2054
2077
  interface StoragePresignUploadRequest extends StorageObjectRequest {
2055
2078
  content_type?: string;
2056
2079
  }
2057
- interface StorageBucketCorsRequest extends StorageObjectBaseRequest {
2058
- }
2080
+ type StorageBucketCorsRequest = StorageObjectBaseRequest;
2059
2081
  interface StorageBucketCorsRuleInput {
2060
2082
  allowed_origins: string[];
2061
2083
  allowed_methods: string[];
@@ -2421,6 +2443,171 @@ type RelationSelectionResult<TContext, TSelect extends AthenaSelectShape> = {
2421
2443
  };
2422
2444
  type AthenaFindManyResult<Row, TSelect extends AthenaSelectShape, TContext = unknown> = Simplify<ScalarSelectionResult<Row, TSelect> & RelationSelectionResult<TContext, TSelect>>;
2423
2445
 
2446
+ type AthenaFindManyAstPayload<Row, TSelect extends AthenaSelectShape> = {
2447
+ table_name: string;
2448
+ select: TSelect;
2449
+ where?: AthenaWhere<Row>;
2450
+ orderBy?: AthenaOrderBy<Row>;
2451
+ limit?: number;
2452
+ };
2453
+
2454
+ interface AthenaTableBuilderStateAst {
2455
+ conditions: AthenaGatewayCondition[];
2456
+ limit?: number;
2457
+ offset?: number;
2458
+ order?: AthenaSortBy;
2459
+ currentPage?: number;
2460
+ pageSize?: number;
2461
+ totalPages?: number;
2462
+ }
2463
+ interface AthenaRpcBuilderStateAst {
2464
+ filters: AthenaRpcFilter[];
2465
+ limit?: number;
2466
+ offset?: number;
2467
+ order?: {
2468
+ column: string;
2469
+ ascending?: boolean;
2470
+ };
2471
+ }
2472
+ interface AthenaDebugAstBase<TKind extends string> {
2473
+ version: 1;
2474
+ kind: TKind;
2475
+ }
2476
+ type AthenaSelectDebugTransport = {
2477
+ mode: 'compiled-fetch' | 'structured-fetch';
2478
+ endpoint: '/gateway/fetch';
2479
+ payload: AthenaFetchPayload;
2480
+ } | {
2481
+ mode: 'typed-query';
2482
+ endpoint: '/gateway/query';
2483
+ payload: {
2484
+ query: string;
2485
+ };
2486
+ };
2487
+ interface AthenaSelectDebugAst extends AthenaDebugAstBase<'select'> {
2488
+ tableName: string;
2489
+ input: {
2490
+ columns: string | string[];
2491
+ state: AthenaTableBuilderStateAst;
2492
+ };
2493
+ transport: AthenaSelectDebugTransport;
2494
+ }
2495
+ type AthenaFindManyDebugTransport<Row = Record<string, unknown>, TSelect extends AthenaSelectShape = AthenaSelectShape> = {
2496
+ mode: 'direct-ast-fetch';
2497
+ endpoint: '/gateway/fetch';
2498
+ payload: AthenaFindManyAstPayload<Row, TSelect>;
2499
+ } | {
2500
+ mode: 'compiled-fetch' | 'structured-fetch';
2501
+ endpoint: '/gateway/fetch';
2502
+ payload: AthenaFetchPayload;
2503
+ } | {
2504
+ mode: 'compiled-query';
2505
+ endpoint: '/gateway/query';
2506
+ payload: {
2507
+ query: string;
2508
+ };
2509
+ };
2510
+ interface AthenaFindManyDebugAst<Row = Record<string, unknown>, TSelect extends AthenaSelectShape = AthenaSelectShape> extends AthenaDebugAstBase<'findMany'> {
2511
+ tableName: string;
2512
+ input: {
2513
+ select: AthenaValidatedSelectShape<TSelect>;
2514
+ where?: AthenaWhere<Row>;
2515
+ orderBy?: AthenaOrderBy<Row>;
2516
+ limit?: number;
2517
+ };
2518
+ compiled: {
2519
+ columns: string;
2520
+ baseState: AthenaTableBuilderStateAst;
2521
+ executionState: AthenaTableBuilderStateAst;
2522
+ };
2523
+ transport: AthenaFindManyDebugTransport<Row, TSelect>;
2524
+ }
2525
+ interface AthenaInsertDebugAst extends AthenaDebugAstBase<'insert'> {
2526
+ tableName: string;
2527
+ input: {
2528
+ values: AthenaInsertPayload['insert_body'];
2529
+ returning?: AthenaInsertPayload['columns'];
2530
+ count?: AthenaInsertPayload['count'];
2531
+ head?: boolean;
2532
+ defaultToNull?: boolean;
2533
+ };
2534
+ transport: {
2535
+ mode: 'insert';
2536
+ endpoint: '/gateway/insert';
2537
+ payload: AthenaInsertPayload;
2538
+ };
2539
+ }
2540
+ interface AthenaUpsertDebugAst extends AthenaDebugAstBase<'upsert'> {
2541
+ tableName: string;
2542
+ input: {
2543
+ values: AthenaInsertPayload['insert_body'];
2544
+ updateBody?: AthenaInsertPayload['update_body'];
2545
+ onConflict?: AthenaInsertPayload['on_conflict'];
2546
+ returning?: AthenaInsertPayload['columns'];
2547
+ count?: AthenaInsertPayload['count'];
2548
+ head?: boolean;
2549
+ defaultToNull?: boolean;
2550
+ };
2551
+ transport: {
2552
+ mode: 'upsert';
2553
+ endpoint: '/gateway/insert';
2554
+ payload: AthenaInsertPayload;
2555
+ };
2556
+ }
2557
+ interface AthenaUpdateDebugAst extends AthenaDebugAstBase<'update'> {
2558
+ tableName: string;
2559
+ input: {
2560
+ values: AthenaUpdatePayload['set'];
2561
+ state: AthenaTableBuilderStateAst;
2562
+ returning?: AthenaUpdatePayload['columns'];
2563
+ };
2564
+ transport: {
2565
+ mode: 'update';
2566
+ endpoint: '/gateway/update';
2567
+ payload: AthenaUpdatePayload;
2568
+ };
2569
+ }
2570
+ interface AthenaDeleteDebugAst extends AthenaDebugAstBase<'delete'> {
2571
+ tableName: string;
2572
+ input: {
2573
+ resourceId?: AthenaDeletePayload['resource_id'];
2574
+ state: AthenaTableBuilderStateAst;
2575
+ returning?: AthenaDeletePayload['columns'];
2576
+ };
2577
+ transport: {
2578
+ mode: 'delete';
2579
+ endpoint: '/gateway/delete';
2580
+ payload: AthenaDeletePayload;
2581
+ };
2582
+ }
2583
+ interface AthenaRpcDebugAst extends AthenaDebugAstBase<'rpc'> {
2584
+ functionName: string;
2585
+ input: {
2586
+ args?: AthenaJsonObject;
2587
+ select?: string | string[];
2588
+ state: AthenaRpcBuilderStateAst;
2589
+ };
2590
+ transport: {
2591
+ mode: 'rpc-post' | 'rpc-get';
2592
+ endpoint: '/gateway/rpc' | `/rpc/${string}`;
2593
+ payload: AthenaRpcPayload;
2594
+ };
2595
+ }
2596
+ interface AthenaRawQueryDebugAst extends AthenaDebugAstBase<'query'> {
2597
+ input: {
2598
+ query: string;
2599
+ };
2600
+ transport: {
2601
+ mode: 'raw-query';
2602
+ endpoint: '/gateway/query';
2603
+ payload: {
2604
+ query: string;
2605
+ };
2606
+ };
2607
+ }
2608
+ type AthenaQueryDebugAst = AthenaSelectDebugAst | AthenaFindManyDebugAst | AthenaInsertDebugAst | AthenaUpsertDebugAst | AthenaUpdateDebugAst | AthenaDeleteDebugAst | AthenaRpcDebugAst | AthenaRawQueryDebugAst;
2609
+ declare function getAthenaDebugAst(value: unknown): AthenaQueryDebugAst | null;
2610
+
2424
2611
  interface AthenaResult<T> {
2425
2612
  data: T | null;
2426
2613
  error: AthenaResultError | null;
@@ -2471,6 +2658,21 @@ interface AthenaClientExperimentalOptions {
2471
2658
  * Includes payload, synthesized SQL, full outcome, and best-effort callsite metadata.
2472
2659
  */
2473
2660
  traceQueries?: boolean | AthenaQueryTraceOptions;
2661
+ /**
2662
+ * Build and attach a normalized operation AST for runtime debugging.
2663
+ *
2664
+ * When enabled, successful Athena results expose a non-enumerable debug AST
2665
+ * that can be read with `getAthenaDebugAst(...)`. If tracing is also enabled,
2666
+ * the same AST is included on emitted trace events.
2667
+ */
2668
+ debugAst?: boolean;
2669
+ /**
2670
+ * Compile-time opt-in for validating simple `select(...)`, `order(...)`, and
2671
+ * RPC filter column names against known row keys.
2672
+ *
2673
+ * This flag is type-only. It does not change runtime request behavior.
2674
+ */
2675
+ typecheckColumns?: boolean;
2474
2676
  /**
2475
2677
  * Send the original `findMany(...)` AST body for clean object-select reads.
2476
2678
  * This requires gateway support and falls back to legacy compiled transport
@@ -2510,6 +2712,7 @@ interface AthenaQueryTraceEvent {
2510
2712
  functionName?: string;
2511
2713
  sql: string;
2512
2714
  payload: unknown;
2715
+ ast?: AthenaQueryDebugAst;
2513
2716
  options?: AthenaGatewayCallOptions | AthenaRpcCallOptions;
2514
2717
  callsite: AthenaQueryTraceCallsite | null;
2515
2718
  outcome?: {
@@ -2523,14 +2726,16 @@ interface AthenaQueryTraceEvent {
2523
2726
  thrownError?: unknown;
2524
2727
  }
2525
2728
  type MutationSingleResult<Result> = Result extends Array<infer Item> ? Item | null : Result | null;
2729
+ type MutationResultRow<Result> = Result extends Array<infer Item> ? Item : Result;
2526
2730
  type AthenaRowShape = Record<string, AthenaJsonValue | undefined>;
2527
2731
  type FilterColumnKey<Row> = Extract<keyof NonNullable<Row>, string>;
2528
2732
  type ResolvedFilterColumnKey<Row> = [FilterColumnKey<Row>] extends [never] ? string : FilterColumnKey<Row>;
2529
- interface MutationQuery<Result> extends PromiseLike<AthenaResult<Result>> {
2530
- select(columns?: string | string[], options?: AthenaGatewayCallOptions): Promise<AthenaResult<Result>>;
2531
- returning(columns?: string | string[], options?: AthenaGatewayCallOptions): Promise<AthenaResult<Result>>;
2532
- single(columns?: string | string[], options?: AthenaGatewayCallOptions): Promise<AthenaResult<MutationSingleResult<Result>>>;
2533
- maybeSingle(columns?: string | string[], options?: AthenaGatewayCallOptions): Promise<AthenaResult<MutationSingleResult<Result>>>;
2733
+ type SelectColumnsFor<Row, TStrict extends boolean, TValue extends AthenaSelectInput> = TStrict extends true ? AthenaValidatedSelectInput<Row, TValue> : TValue;
2734
+ interface MutationQuery<Result, Row = MutationResultRow<Result>, TStrict extends boolean = false> extends PromiseLike<AthenaResult<Result>> {
2735
+ select<const TColumns extends AthenaSelectInput = string>(columns?: SelectColumnsFor<Row, TStrict, TColumns>, options?: AthenaGatewayCallOptions): Promise<AthenaResult<Result>>;
2736
+ returning<const TColumns extends AthenaSelectInput = string>(columns?: SelectColumnsFor<Row, TStrict, TColumns>, options?: AthenaGatewayCallOptions): Promise<AthenaResult<Result>>;
2737
+ single<const TColumns extends AthenaSelectInput = string>(columns?: SelectColumnsFor<Row, TStrict, TColumns>, options?: AthenaGatewayCallOptions): Promise<AthenaResult<MutationSingleResult<Result>>>;
2738
+ maybeSingle<const TColumns extends AthenaSelectInput = string>(columns?: SelectColumnsFor<Row, TStrict, TColumns>, options?: AthenaGatewayCallOptions): Promise<AthenaResult<MutationSingleResult<Result>>>;
2534
2739
  then<TResult1 = AthenaResult<Result>, TResult2 = never>(onfulfilled?: ((value: AthenaResult<Result>) => TResult1 | PromiseLike<TResult1>) | undefined | null, onrejected?: ((reason: unknown) => TResult2 | PromiseLike<TResult2>) | undefined | null): Promise<TResult1 | TResult2>;
2535
2740
  catch<TResult = never>(onrejected?: ((reason: unknown) => TResult | PromiseLike<TResult>) | undefined | null): Promise<AthenaResult<Result> | TResult>;
2536
2741
  finally(onfinally?: (() => void) | undefined | null): Promise<AthenaResult<Result>>;
@@ -2566,78 +2771,92 @@ interface FilterChain<Self, Row> {
2566
2771
  or(expression: string): Self;
2567
2772
  }
2568
2773
  /** Chain returned by select() - supports filters and single/maybeSingle before execution */
2569
- interface SelectChain<Row, SelectedRow = Row> extends FilterChain<SelectChain<Row, SelectedRow>, Row>, PromiseLike<AthenaResult<SelectedRow[]>> {
2570
- single<T = SelectedRow>(columns?: string | string[], options?: AthenaGatewayCallOptions): Promise<AthenaResult<T | null>>;
2571
- maybeSingle<T = SelectedRow>(columns?: string | string[], options?: AthenaGatewayCallOptions): Promise<AthenaResult<T | null>>;
2774
+ interface SelectChain<Row, SelectedRow = Row, TStrict extends boolean = false> extends FilterChain<SelectChain<Row, SelectedRow, TStrict>, Row>, PromiseLike<AthenaResult<SelectedRow[]>> {
2775
+ single<T = SelectedRow, const TColumns extends AthenaSelectInput = string>(columns?: SelectColumnsFor<Row, TStrict, TColumns>, options?: AthenaGatewayCallOptions): Promise<AthenaResult<T | null>>;
2776
+ maybeSingle<T = SelectedRow, const TColumns extends AthenaSelectInput = string>(columns?: SelectColumnsFor<Row, TStrict, TColumns>, options?: AthenaGatewayCallOptions): Promise<AthenaResult<T | null>>;
2572
2777
  }
2573
2778
  /** Chain returned by update() - supports filters before execution, plus select/returning */
2574
- interface UpdateChain<Row> extends FilterChain<UpdateChain<Row>, Row>, MutationQuery<Row[]> {
2575
- }
2576
- interface RpcFilterChain<Self> {
2577
- eq(column: string, value: AthenaConditionValue): Self;
2578
- neq(column: string, value: AthenaConditionValue): Self;
2579
- gt(column: string, value: AthenaConditionValue): Self;
2580
- gte(column: string, value: AthenaConditionValue): Self;
2581
- lt(column: string, value: AthenaConditionValue): Self;
2582
- lte(column: string, value: AthenaConditionValue): Self;
2583
- like(column: string, value: AthenaConditionValue): Self;
2584
- ilike(column: string, value: AthenaConditionValue): Self;
2585
- is(column: string, value: AthenaConditionValue): Self;
2586
- in(column: string, values: AthenaConditionArrayValue): Self;
2779
+ interface UpdateChain<Row, TStrict extends boolean = false> extends FilterChain<UpdateChain<Row, TStrict>, Row>, MutationQuery<Row[], Row, TStrict> {
2780
+ }
2781
+ interface RpcFilterChain<Self, Row, TStrict extends boolean = false> {
2782
+ eq(column: AthenaTypecheckedColumnKey<Row, TStrict>, value: AthenaConditionValue): Self;
2783
+ neq(column: AthenaTypecheckedColumnKey<Row, TStrict>, value: AthenaConditionValue): Self;
2784
+ gt(column: AthenaTypecheckedColumnKey<Row, TStrict>, value: AthenaConditionValue): Self;
2785
+ gte(column: AthenaTypecheckedColumnKey<Row, TStrict>, value: AthenaConditionValue): Self;
2786
+ lt(column: AthenaTypecheckedColumnKey<Row, TStrict>, value: AthenaConditionValue): Self;
2787
+ lte(column: AthenaTypecheckedColumnKey<Row, TStrict>, value: AthenaConditionValue): Self;
2788
+ like(column: AthenaTypecheckedColumnKey<Row, TStrict>, value: AthenaConditionValue): Self;
2789
+ ilike(column: AthenaTypecheckedColumnKey<Row, TStrict>, value: AthenaConditionValue): Self;
2790
+ is(column: AthenaTypecheckedColumnKey<Row, TStrict>, value: AthenaConditionValue): Self;
2791
+ in(column: AthenaTypecheckedColumnKey<Row, TStrict>, values: AthenaConditionArrayValue): Self;
2587
2792
  }
2588
2793
  interface RpcOrderOptions {
2589
2794
  ascending?: boolean;
2590
2795
  }
2591
- interface RpcQueryBuilder<Row> extends RpcFilterChain<RpcQueryBuilder<Row>>, PromiseLike<AthenaResult<Row[]>> {
2592
- select(columns?: string | string[], options?: AthenaRpcCallOptions): Promise<AthenaResult<Row[]>>;
2593
- single<T = Row>(columns?: string | string[], options?: AthenaRpcCallOptions): Promise<AthenaResult<T | null>>;
2594
- maybeSingle<T = Row>(columns?: string | string[], options?: AthenaRpcCallOptions): Promise<AthenaResult<T | null>>;
2595
- order(column: string, options?: RpcOrderOptions): RpcQueryBuilder<Row>;
2596
- limit(count: number): RpcQueryBuilder<Row>;
2597
- offset(count: number): RpcQueryBuilder<Row>;
2598
- range(from: number, to: number): RpcQueryBuilder<Row>;
2796
+ interface RpcQueryBuilder<Row, TStrict extends boolean = false> extends RpcFilterChain<RpcQueryBuilder<Row, TStrict>, Row, TStrict>, PromiseLike<AthenaResult<Row[]>> {
2797
+ select<const TColumns extends AthenaSelectInput = string>(columns?: SelectColumnsFor<Row, TStrict, TColumns>, options?: AthenaRpcCallOptions): Promise<AthenaResult<Row[]>>;
2798
+ single<T = Row, const TColumns extends AthenaSelectInput = string>(columns?: SelectColumnsFor<Row, TStrict, TColumns>, options?: AthenaRpcCallOptions): Promise<AthenaResult<T | null>>;
2799
+ maybeSingle<T = Row, const TColumns extends AthenaSelectInput = string>(columns?: SelectColumnsFor<Row, TStrict, TColumns>, options?: AthenaRpcCallOptions): Promise<AthenaResult<T | null>>;
2800
+ order(column: AthenaTypecheckedColumnKey<Row, TStrict>, options?: RpcOrderOptions): RpcQueryBuilder<Row, TStrict>;
2801
+ limit(count: number): RpcQueryBuilder<Row, TStrict>;
2802
+ offset(count: number): RpcQueryBuilder<Row, TStrict>;
2803
+ range(from: number, to: number): RpcQueryBuilder<Row, TStrict>;
2599
2804
  }
2600
2805
  interface AthenaFromOptions {
2601
2806
  schema?: string;
2602
2807
  }
2603
- interface TableQueryBuilder<Row, Insert = Partial<Row>, Update = Partial<Insert>, TContext = unknown> extends FilterChain<TableQueryBuilder<Row, Insert, Update, TContext>, Row> {
2604
- select<T = Row>(columns?: string | string[], options?: AthenaGatewayCallOptions): SelectChain<Row, T>;
2808
+ interface TableQueryBuilder<Row, Insert = Partial<Row>, Update = Partial<Insert>, TContext = unknown, TStrict extends boolean = false> extends FilterChain<TableQueryBuilder<Row, Insert, Update, TContext, TStrict>, Row> {
2809
+ select<T = Row, const TColumns extends AthenaSelectInput = string>(columns?: SelectColumnsFor<Row, TStrict, TColumns>, options?: AthenaGatewayCallOptions): SelectChain<Row, T, TStrict>;
2605
2810
  findMany<const TSelect extends AthenaSelectShape>(options: AthenaFindManyOptions<Row, TSelect> & {
2606
2811
  select: AthenaValidatedSelectShape<TSelect>;
2607
2812
  }): Promise<AthenaResult<Array<AthenaFindManyResult<Row, TSelect, TContext>>>>;
2608
- insert(values: Insert, options?: AthenaGatewayCallOptions): MutationQuery<Row>;
2609
- insert(values: Insert[], options?: AthenaGatewayCallOptions): MutationQuery<Row[]>;
2813
+ insert(values: Insert, options?: AthenaGatewayCallOptions): MutationQuery<Row, Row, TStrict>;
2814
+ insert(values: Insert[], options?: AthenaGatewayCallOptions): MutationQuery<Row[], Row, TStrict>;
2610
2815
  upsert(values: Insert, options?: AthenaGatewayCallOptions & {
2611
2816
  updateBody?: Update;
2612
2817
  onConflict?: string | string[];
2613
- }): MutationQuery<Row>;
2818
+ }): MutationQuery<Row, Row, TStrict>;
2614
2819
  upsert(values: Insert[], options?: AthenaGatewayCallOptions & {
2615
2820
  updateBody?: Update;
2616
2821
  onConflict?: string | string[];
2617
- }): MutationQuery<Row[]>;
2618
- update(values: Update, options?: AthenaGatewayCallOptions): UpdateChain<Row>;
2822
+ }): MutationQuery<Row[], Row, TStrict>;
2823
+ update(values: Update, options?: AthenaGatewayCallOptions): UpdateChain<Row, TStrict>;
2619
2824
  delete(options?: AthenaGatewayCallOptions & {
2620
2825
  resourceId?: string;
2621
- }): MutationQuery<Row | null>;
2622
- single<T = Row>(columns?: string | string[], options?: AthenaGatewayCallOptions): Promise<AthenaResult<T | null>>;
2623
- maybeSingle<T = Row>(columns?: string | string[], options?: AthenaGatewayCallOptions): Promise<AthenaResult<T | null>>;
2624
- reset(): TableQueryBuilder<Row, Insert, Update, TContext>;
2625
- }
2626
- interface AthenaSdkClient {
2627
- from<Row = AthenaRowShape, Insert = Partial<Row>, Update = Partial<Insert>>(table: string, options?: AthenaFromOptions): TableQueryBuilder<Row, Insert, Update>;
2628
- db: AthenaDbModule;
2629
- rpc<Row = unknown, Args extends AthenaJsonObject = AthenaJsonObject>(fn: string, args?: Args, options?: AthenaRpcCallOptions): RpcQueryBuilder<Row>;
2826
+ }): MutationQuery<Row | null, Row, TStrict>;
2827
+ single<T = Row, const TColumns extends AthenaSelectInput = string>(columns?: SelectColumnsFor<Row, TStrict, TColumns>, options?: AthenaGatewayCallOptions): Promise<AthenaResult<T | null>>;
2828
+ maybeSingle<T = Row, const TColumns extends AthenaSelectInput = string>(columns?: SelectColumnsFor<Row, TStrict, TColumns>, options?: AthenaGatewayCallOptions): Promise<AthenaResult<T | null>>;
2829
+ reset(): TableQueryBuilder<Row, Insert, Update, TContext, TStrict>;
2830
+ }
2831
+ interface AthenaSdkClient<TStrict extends boolean = false> {
2832
+ from<TModel extends AthenaModelTarget>(model: TModel): TableQueryBuilder<RowOf<TModel>, InsertOf<TModel>, UpdateOf<TModel>, unknown, TStrict>;
2833
+ from<Row = AthenaRowShape, Insert = Partial<Row>, Update = Partial<Insert>>(table: string, options?: AthenaFromOptions): TableQueryBuilder<Row, Insert, Update, unknown, TStrict>;
2834
+ db: AthenaDbModule<TStrict>;
2835
+ rpc<Row = unknown, Args extends AthenaJsonObject = AthenaJsonObject>(fn: string, args?: Args, options?: AthenaRpcCallOptions): RpcQueryBuilder<Row, TStrict>;
2630
2836
  query<Row = unknown>(query: string, options?: AthenaGatewayCallOptions): Promise<AthenaResult<Row[]>>;
2631
2837
  verifyConnection(options?: AthenaGatewayConnectionOptions): Promise<AthenaGatewayConnectionResult>;
2632
2838
  }
2633
- interface AthenaSdkClientWithAuth extends AthenaSdkClient {
2839
+ interface AthenaSdkClientWithAuth<TStrict extends boolean = false> extends AthenaSdkClient<TStrict> {
2634
2840
  auth: AthenaAuthBindings;
2635
2841
  }
2636
- interface AthenaSdkClientWithStorage extends AthenaSdkClientWithAuth {
2842
+ interface AthenaSdkClientWithStorage<TStrict extends boolean = false> extends AthenaSdkClientWithAuth<TStrict> {
2637
2843
  storage: AthenaStorageModule;
2638
2844
  }
2845
+ interface AthenaCreateClientServiceUrlConfig {
2846
+ url?: string | null;
2847
+ }
2848
+ interface AthenaCreateClientAuthOptions extends AthenaAuthClientConfig {
2849
+ url?: string | null;
2850
+ }
2639
2851
  interface AthenaCreateClientOptions extends Pick<AthenaGatewayCallOptions, 'client' | 'headers' | 'backend'> {
2640
- auth?: AthenaAuthClientConfig;
2852
+ db?: AthenaCreateClientServiceUrlConfig;
2853
+ gateway?: AthenaCreateClientServiceUrlConfig;
2854
+ auth?: AthenaCreateClientAuthOptions;
2855
+ storage?: AthenaCreateClientServiceUrlConfig;
2856
+ dbUrl?: string | null;
2857
+ gatewayUrl?: string | null;
2858
+ authUrl?: string | null;
2859
+ storageUrl?: string | null;
2641
2860
  experimental?: AthenaClientExperimentalOptions;
2642
2861
  }
2643
2862
  interface AthenaCreateClientOptionsWithStorage extends AthenaCreateClientOptions {
@@ -2645,40 +2864,82 @@ interface AthenaCreateClientOptionsWithStorage extends AthenaCreateClientOptions
2645
2864
  athenaStorageBackend: true;
2646
2865
  };
2647
2866
  }
2648
- interface AthenaClientBuilder<StorageEnabled extends boolean = false> {
2649
- /** Set the gateway base URL. */
2650
- url(url: string): AthenaClientBuilder<StorageEnabled>;
2867
+ interface AthenaCreateClientOptionsWithTypecheckedColumns extends AthenaCreateClientOptions {
2868
+ experimental: AthenaClientExperimentalOptions & {
2869
+ typecheckColumns: true;
2870
+ };
2871
+ }
2872
+ interface AthenaCreateClientOptionsWithStorageAndTypecheckedColumns extends AthenaCreateClientOptions {
2873
+ experimental: AthenaClientExperimentalOptions & {
2874
+ athenaStorageBackend: true;
2875
+ typecheckColumns: true;
2876
+ };
2877
+ }
2878
+ interface AthenaCreateClientConfig extends AthenaCreateClientOptions {
2879
+ url?: string | null;
2880
+ key: string;
2881
+ }
2882
+ interface AthenaCreateClientConfigWithStorage extends AthenaCreateClientOptionsWithStorage {
2883
+ url?: string | null;
2884
+ key: string;
2885
+ }
2886
+ interface AthenaCreateClientConfigWithTypecheckedColumns extends AthenaCreateClientOptionsWithTypecheckedColumns {
2887
+ url?: string | null;
2888
+ key: string;
2889
+ }
2890
+ interface AthenaCreateClientConfigWithStorageAndTypecheckedColumns extends AthenaCreateClientOptionsWithStorageAndTypecheckedColumns {
2891
+ url?: string | null;
2892
+ key: string;
2893
+ }
2894
+ interface AthenaClientBuilder<StorageEnabled extends boolean = false, TStrict extends boolean = false> {
2895
+ /** Set the public Athena base URL. */
2896
+ url(url: string): AthenaClientBuilder<StorageEnabled, TStrict>;
2651
2897
  /** Set the API key used for all requests. */
2652
- key(apiKey: string): AthenaClientBuilder<StorageEnabled>;
2898
+ key(apiKey: string): AthenaClientBuilder<StorageEnabled, TStrict>;
2653
2899
  /** Set the default backend routing strategy. */
2654
- backend(backend: BackendConfig | BackendType): AthenaClientBuilder<StorageEnabled>;
2900
+ backend(backend: BackendConfig | BackendType): AthenaClientBuilder<StorageEnabled, TStrict>;
2655
2901
  /** Set the default Athena client routing key. */
2656
- client(clientName: string): AthenaClientBuilder<StorageEnabled>;
2902
+ client(clientName: string): AthenaClientBuilder<StorageEnabled, TStrict>;
2657
2903
  /** Attach static headers to every request. */
2658
- headers(headers: Record<string, string>): AthenaClientBuilder<StorageEnabled>;
2904
+ headers(headers: Record<string, string>): AthenaClientBuilder<StorageEnabled, TStrict>;
2659
2905
  /** Configure Athena Auth client behavior for `client.auth.*` methods. */
2660
- auth(config: AthenaAuthClientConfig): AthenaClientBuilder<StorageEnabled>;
2661
- /** Configure experimental client options and narrow the built client when storage is enabled. */
2906
+ auth(config: AthenaCreateClientAuthOptions): AthenaClientBuilder<StorageEnabled, TStrict>;
2907
+ /** Configure experimental client options and narrow the built client when storage or strict column checks are enabled. */
2662
2908
  experimental(options: AthenaClientExperimentalOptions & {
2663
2909
  athenaStorageBackend: true;
2664
- }): AthenaClientBuilder<true>;
2665
- experimental(options: AthenaClientExperimentalOptions): AthenaClientBuilder<StorageEnabled>;
2910
+ typecheckColumns: true;
2911
+ }): AthenaClientBuilder<true, true>;
2912
+ experimental(options: AthenaClientExperimentalOptions & {
2913
+ athenaStorageBackend: true;
2914
+ }): AthenaClientBuilder<true, TStrict>;
2915
+ experimental(options: AthenaClientExperimentalOptions & {
2916
+ typecheckColumns: true;
2917
+ }): AthenaClientBuilder<StorageEnabled, true>;
2918
+ experimental(options: AthenaClientExperimentalOptions): AthenaClientBuilder<StorageEnabled, TStrict>;
2666
2919
  /** Apply createClient options and narrow the built client when storage is enabled. */
2667
- options(options: AthenaCreateClientOptionsWithStorage): AthenaClientBuilder<true>;
2668
- options(options: AthenaCreateClientOptions): AthenaClientBuilder<StorageEnabled>;
2920
+ options(options: AthenaCreateClientOptionsWithStorageAndTypecheckedColumns): AthenaClientBuilder<true, true>;
2921
+ options(options: AthenaCreateClientOptionsWithStorage): AthenaClientBuilder<true, TStrict>;
2922
+ options(options: AthenaCreateClientOptionsWithTypecheckedColumns): AthenaClientBuilder<StorageEnabled, true>;
2923
+ options(options: AthenaCreateClientOptions): AthenaClientBuilder<StorageEnabled, TStrict>;
2669
2924
  /** Build the immutable Athena SDK client. */
2670
- build(): StorageEnabled extends true ? AthenaSdkClientWithStorage : AthenaSdkClientWithAuth;
2925
+ build(): StorageEnabled extends true ? AthenaSdkClientWithStorage<TStrict> : AthenaSdkClientWithAuth<TStrict>;
2671
2926
  }
2672
2927
  /** Canonical Athena client factory with builder-based configuration. */
2673
2928
  declare class AthenaClient {
2674
2929
  /** Create a fluent builder for a strongly-typed Athena SDK client. */
2675
- static builder(): AthenaClientBuilder<false>;
2930
+ static builder(): AthenaClientBuilder<false, false>;
2676
2931
  /** Build a client from process environment variables. */
2677
- static fromEnvironment(): AthenaSdkClientWithAuth;
2932
+ static fromEnvironment(): AthenaSdkClientWithAuth<false>;
2678
2933
  }
2679
2934
  /** Create client (convenience wrapper; use AthenaClient.builder() for full control) */
2680
- declare function createClient(url: string, apiKey: string, options: AthenaCreateClientOptionsWithStorage): AthenaSdkClientWithStorage;
2681
- declare function createClient(url: string, apiKey: string, options?: AthenaCreateClientOptions): AthenaSdkClientWithAuth;
2935
+ declare function createClient(config: AthenaCreateClientConfigWithStorageAndTypecheckedColumns): AthenaSdkClientWithStorage<true>;
2936
+ declare function createClient(config: AthenaCreateClientConfigWithStorage): AthenaSdkClientWithStorage<false>;
2937
+ declare function createClient(config: AthenaCreateClientConfigWithTypecheckedColumns): AthenaSdkClientWithAuth<true>;
2938
+ declare function createClient(config: AthenaCreateClientConfig): AthenaSdkClientWithAuth<false>;
2939
+ declare function createClient(url: string, apiKey: string, options: AthenaCreateClientOptionsWithStorageAndTypecheckedColumns): AthenaSdkClientWithStorage<true>;
2940
+ declare function createClient(url: string, apiKey: string, options: AthenaCreateClientOptionsWithStorage): AthenaSdkClientWithStorage<false>;
2941
+ declare function createClient(url: string, apiKey: string, options: AthenaCreateClientOptionsWithTypecheckedColumns): AthenaSdkClientWithAuth<true>;
2942
+ declare function createClient(url: string, apiKey: string, options?: AthenaCreateClientOptions): AthenaSdkClientWithAuth<false>;
2682
2943
 
2683
2944
  interface AthenaGatewayErrorInput {
2684
2945
  code: AthenaGatewayErrorCode;
@@ -2722,6 +2983,10 @@ type MapNullableToFormValue<TField, TMode extends ModelFormNullishMode> = null e
2722
2983
  type ModelFormValues<TModel extends AnyModelDef, TMode extends ModelFormNullishMode = 'empty-string'> = {
2723
2984
  [K in keyof InsertOf<TModel>]: MapNullableToFormValue<InsertOf<TModel>[K], TMode>;
2724
2985
  };
2986
+ /**
2987
+ * Alias for deriving form value types from any model contract.
2988
+ */
2989
+ type FormValuesOf<TModel extends AnyModelDef, TMode extends ModelFormNullishMode = 'empty-string'> = ModelFormValues<TModel, TMode>;
2725
2990
  /**
2726
2991
  * Default value shape for form initialization.
2727
2992
  */
@@ -2769,4 +3034,4 @@ interface ModelFormAdapter<TModel extends AnyModelDef> {
2769
3034
  */
2770
3035
  declare function createModelFormAdapter<TModel extends AnyModelDef>(model: TModel): ModelFormAdapter<TModel>;
2771
3036
 
2772
- export { type AthenaClientExperimentalOptions as $, type AthenaAdminListUsersFilterOperator as A, type AthenaAuthQueryValue as B, type AthenaAuthReactEmailComponent as C, type AthenaAuthReactEmailConfig as D, type AthenaAuthReactEmailEventPhase as E, type AthenaAuthReactEmailProps as F, type AthenaAuthReactEmailRenderEvent as G, type AthenaAuthReactEmailRenderInput as H, type AthenaAuthReactEmailRenderOptions as I, type AthenaAuthRequestInput as J, type AthenaAuthResetPasswordBinding as K, type AthenaAuthResult as L, type AthenaAuthRevokeSessionRequest as M, type AthenaAuthSdkClient as N, type AthenaAuthSearchOperator as O, type AthenaAuthSession as P, type AthenaAuthSessionResponse as Q, type AthenaAuthSessionRevokeBinding as R, type AthenaAuthSignInResponse as S, type AthenaAuthSignOutResponse as T, type AthenaAuthSocialRedirectResponse as U, type AthenaAuthStatusResponse as V, type AthenaAuthUser as W, type AthenaChangeEmailRequest as X, type AthenaChangePasswordRequest as Y, AthenaClient as Z, type AthenaClientBuilder as _, type AthenaAdminListUsersQuery as a, type AthenaUnlinkAccountRequest as a$, type AthenaCreateClientOptions as a0, type AthenaCreateClientOptionsWithStorage as a1, type AthenaDbModule as a2, type AthenaDeleteUserCallbackRequest as a3, type AthenaDeleteUserRequest as a4, type AthenaDeleteUserResponse as a5, type AthenaEmailSignInRequest as a6, type AthenaEmailSignUpRequest as a7, type AthenaEnvelope as a8, AthenaError as a9, type AthenaSocialSignInRequest as aA, type AthenaStorageBinaryCallOptions as aB, type AthenaStorageCallOptions as aC, type AthenaStorageClientConfig as aD, type AthenaStorageEnv as aE, AthenaStorageError as aF, AthenaStorageErrorCode as aG, type AthenaStorageErrorDetails as aH, type AthenaStorageErrorHandler as aI, type AthenaStorageErrorInput as aJ, type AthenaStorageFileConfig as aK, type AthenaStorageFileDeleteInput as aL, type AthenaStorageFileDownloadInput as aM, type AthenaStorageFileListInput as aN, type AthenaStorageFileModule as aO, type AthenaStorageFileUploadInput as aP, type AthenaStorageFileUploadResult as aQ, type AthenaStorageModule as aR, type AthenaStoragePathContext as aS, type AthenaStoragePrefixPath as aT, type AthenaStorageTemplateValue as aU, type AthenaStorageTemplateVars as aV, type AthenaStorageUploadConstraints as aW, type AthenaStorageUploadProgress as aX, type AthenaStorageUploadProgressHandler as aY, type AthenaStorageUploadSource as aZ, type AthenaStorageUploadedFile as a_, AthenaErrorCategory as aa, AthenaErrorCode as ab, type AthenaErrorInput as ac, AthenaErrorKind as ad, type AthenaFindManyOptions as ae, type AthenaFindManyResult as af, type AthenaForgetPasswordRequest as ag, type AthenaFromOptions as ah, AthenaGatewayError as ai, type AthenaLinkSocialRequest as aj, type AthenaOAuthAccountTokenRequest as ak, type AthenaOAuthTokenBundle as al, type AthenaOperationContext as am, type AthenaOrderBy as an, type AthenaQueryTraceCallsite as ao, type AthenaQueryTraceEvent as ap, type AthenaQueryTraceOptions as aq, type AthenaRelationSelectNode as ar, type AthenaResetPasswordRequest as as, type AthenaResult as at, type AthenaResultError as au, type AthenaSdkClient as av, type AthenaSdkClientWithAuth as aw, type AthenaSdkClientWithStorage as ax, type AthenaSelectShape as ay, type AthenaSendVerificationEmailRequest as az, type AthenaAdminListUsersSearchOperator as b, type AthenaUpdateUserRequest as b0, type AthenaUsernameSignInRequest as b1, type AthenaVerifyEmailRequest as b2, type AthenaWhere as b3, type AthenaWhereBooleanOperand as b4, type AthenaWhereOperatorInput as b5, type CreateStorageCatalogRequest as b6, type CreateStorageUploadUrlRequest as b7, type CreateStorageUploadUrlsRequest as b8, type DeleteStorageFolderRequest as b9, type ToModelFormDefaultsOptions as bA, type ToModelPayloadOptions as bB, type UnwrapOneOptions as bC, type UnwrapOptions as bD, type UpdateStorageCatalogRequest as bE, type UpdateStorageFileRequest as bF, assertInt as bG, coerceInt as bH, createAthenaStorageError as bI, createClient as bJ, createModelFormAdapter as bK, isAthenaGatewayError as bL, isOk as bM, normalizeAthenaError as bN, parseBooleanFlag as bO, requireAffected as bP, requireSuccess as bQ, storageSdkManifest as bR, toModelFormDefaults as bS, toModelPayload as bT, unwrap as bU, unwrapOne as bV, unwrapRows as bW, withRetry as bX, type AthenaAuthFetchCompatibleInput as bY, type GetStorageFileUrlQuery as ba, type IntCoercionOptions as bb, type ListStorageFilesRequest as bc, type ManagedFileRecord as bd, type ModelFormAdapter as be, type ModelFormDefaults as bf, type ModelFormNullishMode as bg, type ModelFormValues as bh, type MoveStorageFolderRequest as bi, type NormalizedAthenaError as bj, type PresignedFileUrlResponse as bk, type RequireAffectedOptions as bl, type RetryBackoffStrategy as bm, type RetryConfig as bn, type RpcOrderOptions as bo, type RpcQueryBuilder as bp, type S3CatalogItem as bq, type S3CredentialListItem as br, type SetStorageFileVisibilityRequest as bs, type StorageBatchUploadUrlResponse as bt, type StorageFileAccessPurpose as bu, type StorageFileMutationResponse as bv, type StorageFolderMutationResponse as bw, type StorageListFilesResponse as bx, type StorageUploadUrlResponse as by, type TableQueryBuilder as bz, type AthenaAuthAdminUserSessionRevokeBinding as c, type AthenaAuthBindings as d, type AthenaAuthCallOptions as e, type AthenaAuthClientConfig as f, type AthenaAuthCredentials as g, type AthenaAuthEmailChangeResponse as h, type AthenaAuthEmailTemplateBuilder as i, type AthenaAuthEmailTemplateCreateFromDefinitionInput as j, type AthenaAuthEmailTemplateDefinition as k, type AthenaAuthEmailTemplateReactOverrides as l, type AthenaAuthEmailTemplateUpdateFromDefinitionInput as m, type AthenaAuthEndpointPath as n, type AthenaAuthErrorCode as o, type AthenaAuthErrorDetails as p, type AthenaAuthFilterOperator as q, type AthenaAuthGenericInput as r, type AthenaAuthGenericQueryInput as s, type AthenaAuthLinkedAccount as t, type AthenaAuthMethod as u, type AthenaAuthOrganization as v, type AthenaAuthOrganizationBindings as w, type AthenaAuthOrganizationInvitation as x, type AthenaAuthOrganizationMember as y, type AthenaAuthQueryPrimitive as z };
3037
+ export { type AthenaClientExperimentalOptions as $, type AthenaAdminListUsersFilterOperator as A, type AthenaAuthQueryValue as B, type AthenaAuthReactEmailComponent as C, type AthenaAuthReactEmailConfig as D, type AthenaAuthReactEmailEventPhase as E, type AthenaAuthReactEmailProps as F, type AthenaAuthReactEmailRenderEvent as G, type AthenaAuthReactEmailRenderInput as H, type AthenaAuthReactEmailRenderOptions as I, type AthenaAuthRequestInput as J, type AthenaAuthResetPasswordBinding as K, type AthenaAuthResult as L, type AthenaAuthRevokeSessionRequest as M, type AthenaAuthSdkClient as N, type AthenaAuthSearchOperator as O, type AthenaAuthSession as P, type AthenaAuthSessionResponse as Q, type AthenaAuthSessionRevokeBinding as R, type AthenaAuthSignInResponse as S, type AthenaAuthSignOutResponse as T, type AthenaAuthSocialRedirectResponse as U, type AthenaAuthStatusResponse as V, type AthenaAuthUser as W, type AthenaChangeEmailRequest as X, type AthenaChangePasswordRequest as Y, AthenaClient as Z, type AthenaClientBuilder as _, type AthenaAdminListUsersQuery as a, type AthenaStorageFileConfig as a$, type AthenaCreateClientAuthOptions as a0, type AthenaCreateClientConfig as a1, type AthenaCreateClientConfigWithStorage as a2, type AthenaCreateClientConfigWithStorageAndTypecheckedColumns as a3, type AthenaCreateClientConfigWithTypecheckedColumns as a4, type AthenaCreateClientOptions as a5, type AthenaCreateClientOptionsWithStorage as a6, type AthenaCreateClientOptionsWithStorageAndTypecheckedColumns as a7, type AthenaCreateClientOptionsWithTypecheckedColumns as a8, type AthenaCreateClientServiceUrlConfig as a9, type AthenaQueryTraceCallsite as aA, type AthenaQueryTraceEvent as aB, type AthenaQueryTraceOptions as aC, type AthenaRawQueryDebugAst as aD, type AthenaRelationSelectNode as aE, type AthenaResetPasswordRequest as aF, type AthenaResult as aG, type AthenaResultError as aH, type AthenaRpcBuilderStateAst as aI, type AthenaRpcDebugAst as aJ, type AthenaSdkClient as aK, type AthenaSdkClientWithAuth as aL, type AthenaSdkClientWithStorage as aM, type AthenaSelectDebugAst as aN, type AthenaSelectDebugTransport as aO, type AthenaSelectShape as aP, type AthenaSendVerificationEmailRequest as aQ, type AthenaSocialSignInRequest as aR, type AthenaStorageBinaryCallOptions as aS, type AthenaStorageCallOptions as aT, type AthenaStorageClientConfig as aU, type AthenaStorageEnv as aV, AthenaStorageError as aW, AthenaStorageErrorCode as aX, type AthenaStorageErrorDetails as aY, type AthenaStorageErrorHandler as aZ, type AthenaStorageErrorInput as a_, type AthenaDbModule as aa, type AthenaDeleteDebugAst as ab, type AthenaDeleteUserCallbackRequest as ac, type AthenaDeleteUserRequest as ad, type AthenaDeleteUserResponse as ae, type AthenaEmailSignInRequest as af, type AthenaEmailSignUpRequest as ag, type AthenaEnvelope as ah, AthenaError as ai, AthenaErrorCategory as aj, AthenaErrorCode as ak, type AthenaErrorInput as al, AthenaErrorKind as am, type AthenaFindManyDebugAst as an, type AthenaFindManyOptions as ao, type AthenaFindManyResult as ap, type AthenaForgetPasswordRequest as aq, type AthenaFromOptions as ar, AthenaGatewayError as as, type AthenaInsertDebugAst as at, type AthenaLinkSocialRequest as au, type AthenaOAuthAccountTokenRequest as av, type AthenaOAuthTokenBundle as aw, type AthenaOperationContext as ax, type AthenaOrderBy as ay, type AthenaQueryDebugAst as az, type AthenaAdminListUsersSearchOperator as b, assertInt as b$, type AthenaStorageFileDeleteInput as b0, type AthenaStorageFileDownloadInput as b1, type AthenaStorageFileListInput as b2, type AthenaStorageFileModule as b3, type AthenaStorageFileUploadInput as b4, type AthenaStorageFileUploadResult as b5, type AthenaStorageModule as b6, type AthenaStoragePathContext as b7, type AthenaStoragePrefixPath as b8, type AthenaStorageTemplateValue as b9, type ModelFormDefaults as bA, type ModelFormNullishMode as bB, type ModelFormValues as bC, type MoveStorageFolderRequest as bD, type NormalizedAthenaError as bE, type PresignedFileUrlResponse as bF, type RequireAffectedOptions as bG, type RetryBackoffStrategy as bH, type RetryConfig as bI, type RpcOrderOptions as bJ, type RpcQueryBuilder as bK, type S3CatalogItem as bL, type S3CredentialListItem as bM, type SetStorageFileVisibilityRequest as bN, type StorageBatchUploadUrlResponse as bO, type StorageFileAccessPurpose as bP, type StorageFileMutationResponse as bQ, type StorageFolderMutationResponse as bR, type StorageListFilesResponse as bS, type StorageUploadUrlResponse as bT, type TableQueryBuilder as bU, type ToModelFormDefaultsOptions as bV, type ToModelPayloadOptions as bW, type UnwrapOneOptions as bX, type UnwrapOptions as bY, type UpdateStorageCatalogRequest as bZ, type UpdateStorageFileRequest as b_, type AthenaStorageTemplateVars as ba, type AthenaStorageUploadConstraints as bb, type AthenaStorageUploadProgress as bc, type AthenaStorageUploadProgressHandler as bd, type AthenaStorageUploadSource as be, type AthenaStorageUploadedFile as bf, type AthenaTableBuilderStateAst as bg, type AthenaUnlinkAccountRequest as bh, type AthenaUpdateDebugAst as bi, type AthenaUpdateUserRequest as bj, type AthenaUpsertDebugAst as bk, type AthenaUsernameSignInRequest as bl, type AthenaVerifyEmailRequest as bm, type AthenaWhere as bn, type AthenaWhereBooleanOperand as bo, type AthenaWhereOperatorInput as bp, type CreateStorageCatalogRequest as bq, type CreateStorageUploadUrlRequest as br, type CreateStorageUploadUrlsRequest as bs, type DeleteStorageFolderRequest as bt, type FormValuesOf as bu, type GetStorageFileUrlQuery as bv, type IntCoercionOptions as bw, type ListStorageFilesRequest as bx, type ManagedFileRecord as by, type ModelFormAdapter as bz, type AthenaAuthAdminUserSessionRevokeBinding as c, coerceInt as c0, createAthenaStorageError as c1, createClient as c2, createModelFormAdapter as c3, getAthenaDebugAst as c4, isAthenaGatewayError as c5, isOk as c6, normalizeAthenaError as c7, parseBooleanFlag as c8, requireAffected as c9, requireSuccess as ca, storageSdkManifest as cb, toModelFormDefaults as cc, toModelPayload as cd, unwrap as ce, unwrapOne as cf, unwrapRows as cg, withRetry as ch, type AthenaAuthFetchCompatibleInput as ci, type AthenaAuthBindings as d, type AthenaAuthCallOptions as e, type AthenaAuthClientConfig as f, type AthenaAuthCredentials as g, type AthenaAuthEmailChangeResponse as h, type AthenaAuthEmailTemplateBuilder as i, type AthenaAuthEmailTemplateCreateFromDefinitionInput as j, type AthenaAuthEmailTemplateDefinition as k, type AthenaAuthEmailTemplateReactOverrides as l, type AthenaAuthEmailTemplateUpdateFromDefinitionInput as m, type AthenaAuthEndpointPath as n, type AthenaAuthErrorCode as o, type AthenaAuthErrorDetails as p, type AthenaAuthFilterOperator as q, type AthenaAuthGenericInput as r, type AthenaAuthGenericQueryInput as s, type AthenaAuthLinkedAccount as t, type AthenaAuthMethod as u, type AthenaAuthOrganization as v, type AthenaAuthOrganizationBindings as w, type AthenaAuthOrganizationInvitation as x, type AthenaAuthOrganizationMember as y, type AthenaAuthQueryPrimitive as z };
@@ -1,4 +1,4 @@
1
- import { R as RunGeneratorOptions, l as RunGeneratorResult } from './types-t_TVqnmp.js';
1
+ import { R as RunGeneratorOptions, o as RunGeneratorResult } from './types-BzY6fETM.js';
2
2
 
3
3
  /**
4
4
  * End-to-end generator execution: load config, introspect, render, and optionally write files.
@@ -1,4 +1,4 @@
1
- import { R as RunGeneratorOptions, l as RunGeneratorResult } from './types-BSIsyss1.cjs';
1
+ import { R as RunGeneratorOptions, o as RunGeneratorResult } from './types-CAtTGGoz.cjs';
2
2
 
3
3
  /**
4
4
  * End-to-end generator execution: load config, introspect, render, and optionally write files.