@madewithremy/admin 0.1.5 → 0.1.6

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/dist/index.d.ts CHANGED
@@ -808,7 +808,7 @@ interface CrashesStatsParams {
808
808
  * @example
809
809
  * const { errors } = await admin.crashes.list({ sort: 'frequent', limit: 10 });
810
810
  */
811
- declare function list$8(ctx: AdminContext, params?: CrashesListParams): Promise<CrashesListResult>;
811
+ declare function list$9(ctx: AdminContext, params?: CrashesListParams): Promise<CrashesListResult>;
812
812
  /**
813
813
  * Individual crash events for one fingerprint, cursor-paginated.
814
814
  *
@@ -829,7 +829,7 @@ declare function occurrences(ctx: AdminContext, fingerprint: string, params?: Cr
829
829
  * @example
830
830
  * const event = await admin.crashes.get('evt_xyz789');
831
831
  */
832
- declare function get$5(ctx: AdminContext, eventId: string): Promise<CrashesGetResult>;
832
+ declare function get$6(ctx: AdminContext, eventId: string): Promise<CrashesGetResult>;
833
833
  /**
834
834
  * Bucketed time series of total crash occurrence volume for the app.
835
835
  *
@@ -847,7 +847,7 @@ type crashes_CrashesStatsParams = CrashesStatsParams;
847
847
  declare const crashes_occurrences: typeof occurrences;
848
848
  declare const crashes_stats: typeof stats;
849
849
  declare namespace crashes {
850
- export { type crashes_CrashesListParams as CrashesListParams, type crashes_CrashesOccurrencesParams as CrashesOccurrencesParams, type crashes_CrashesStatsParams as CrashesStatsParams, get$5 as get, list$8 as list, crashes_occurrences as occurrences, crashes_stats as stats };
850
+ export { type crashes_CrashesListParams as CrashesListParams, type crashes_CrashesOccurrencesParams as CrashesOccurrencesParams, type crashes_CrashesStatsParams as CrashesStatsParams, get$6 as get, list$9 as list, crashes_occurrences as occurrences, crashes_stats as stats };
851
851
  }
852
852
 
853
853
  /**
@@ -942,7 +942,7 @@ interface CronListParams {
942
942
  * const { jobs } = await admin.cron.list({ runs: 50 });
943
943
  * const blocked = jobs.filter((j) => j.status === 'blocked');
944
944
  */
945
- declare function list$7(ctx: AdminContext, params?: CronListParams): Promise<CronOverviewResult>;
945
+ declare function list$8(ctx: AdminContext, params?: CronListParams): Promise<CronOverviewResult>;
946
946
  /**
947
947
  * Trigger a job now (does not affect its schedule).
948
948
  *
@@ -962,7 +962,7 @@ declare function run(ctx: AdminContext, route: string): Promise<CronRunResult>;
962
962
  type cron_CronListParams = CronListParams;
963
963
  declare const cron_run: typeof run;
964
964
  declare namespace cron {
965
- export { type cron_CronListParams as CronListParams, list$7 as list, cron_run as run };
965
+ export { type cron_CronListParams as CronListParams, list$8 as list, cron_run as run };
966
966
  }
967
967
 
968
968
  /**
@@ -1075,10 +1075,20 @@ declare namespace data {
1075
1075
  * Chunking settings pinned at pipeline creation.
1076
1076
  * Any change requires a revectorize, not a config update.
1077
1077
  */
1078
+ /**
1079
+ * `structural` splits on document structure (headings, blocks, paragraphs);
1080
+ * `whole` embeds each document as a single chunk, for corpora of short records
1081
+ * where the document is the retrieval unit.
1082
+ */
1083
+ type DataSourcesChunkingStrategy = 'structural' | 'whole';
1078
1084
  interface DataSourcesChunkingConfig {
1079
- strategy: 'structural';
1085
+ strategy: DataSourcesChunkingStrategy;
1080
1086
  version: number;
1081
- /** Rough char budget per chunk; structure wins over budget, never the reverse. */
1087
+ /**
1088
+ * Rough char budget per chunk; structure wins over budget, never the reverse.
1089
+ * For `whole`, the ceiling above which a document is chunked structurally
1090
+ * instead (default 24000).
1091
+ */
1082
1092
  maxChars: number;
1083
1093
  /** Below this a chunk is merged forward rather than embedded on its own. */
1084
1094
  minChars: number;
@@ -1123,6 +1133,8 @@ interface DataSourcesIngestConfig {
1123
1133
  */
1124
1134
  interface DataSourcesIngestUpdate {
1125
1135
  chunking?: {
1136
+ /** Naming a strategy pins its current version; versions are not settable. */
1137
+ strategy?: DataSourcesChunkingStrategy;
1126
1138
  maxChars?: number;
1127
1139
  minChars?: number;
1128
1140
  dropBlockTypes?: string[];
@@ -1135,8 +1147,13 @@ interface DataSourcesIngestUpdate {
1135
1147
  describe?: boolean;
1136
1148
  modelId?: string;
1137
1149
  };
1150
+ /**
1151
+ * `dimensions` must be the model's native size or one of its Matryoshka
1152
+ * sizes; omitted = native. Either half alone re-resolves the pair.
1153
+ */
1138
1154
  embedding?: {
1139
- modelId: string;
1155
+ modelId?: string;
1156
+ dimensions?: number;
1140
1157
  };
1141
1158
  extraction?: {
1142
1159
  modelId: string;
@@ -1203,13 +1220,16 @@ interface DataSourcesDocumentStatus {
1203
1220
  ingestedAt: string | null;
1204
1221
  }
1205
1222
  /**
1206
- * GET /datasources/documents — per-document ingest state for one pipeline.
1223
+ * GET /datasources/documents — one page of per-document ingest state for one
1224
+ * pipeline, oldest first.
1207
1225
  *
1208
1226
  * `pipelineVersion` is absent when the data source does not exist (returns `{ documents: [] }`).
1209
- * `candidate=true` watches a migration in progress.
1227
+ * `candidate=true` watches a migration in progress. `nextCursor` is set when
1228
+ * more pages follow; `allDocuments` walks them.
1210
1229
  */
1211
1230
  interface DataSourcesDocumentsResult {
1212
1231
  pipelineVersion?: number;
1232
+ nextCursor?: string | null;
1213
1233
  documents: DataSourcesDocumentStatus[];
1214
1234
  }
1215
1235
  /**
@@ -1242,6 +1262,17 @@ interface DataSourcesBuildProgress {
1242
1262
  processing: number;
1243
1263
  error: number;
1244
1264
  }
1265
+ /**
1266
+ * Where a source's index lives. Null is the shared pool. `phase` is the
1267
+ * resource's lifecycle phase (see types/infra.ts); anything but `active` means
1268
+ * searches on this source fail with `capacity_<phase>`.
1269
+ */
1270
+ interface DataSourcesPlacement {
1271
+ resourceId: string;
1272
+ name: string | null;
1273
+ offeringLabel: string | null;
1274
+ phase: string;
1275
+ }
1245
1276
  /** One data source in the GET /datasources listing. */
1246
1277
  interface DataSourcesListEntry {
1247
1278
  id: string;
@@ -1263,6 +1294,8 @@ interface DataSourcesListEntry {
1263
1294
  version: number;
1264
1295
  progress: DataSourcesBuildProgress;
1265
1296
  } | null;
1297
+ /** Dedicated placement, or null for the shared pool. */
1298
+ placement: DataSourcesPlacement | null;
1266
1299
  createdAt: string;
1267
1300
  }
1268
1301
  /** GET /datasources — all data sources for the app. */
@@ -1350,8 +1383,26 @@ interface DataSourcesConfigResult {
1350
1383
  /** POST /datasources/config — response after updating configuration. */
1351
1384
  interface DataSourcesConfigUpdateResult {
1352
1385
  ingestChanged: boolean;
1386
+ placementChanged: boolean;
1353
1387
  ingest: DataSourcesIngestConfig;
1354
1388
  retrieval: Partial<DataSourcesRetrievalConfig>;
1389
+ placement: DataSourcesPlacement | null;
1390
+ }
1391
+ /** POST /datasources — an empty source, on the requested placement. */
1392
+ interface DataSourcesCreateResult {
1393
+ dataSource: {
1394
+ id: string;
1395
+ slug: string;
1396
+ name: string | null;
1397
+ /** Dedicated resource id, or null for the shared pool. */
1398
+ resourceId: string | null;
1399
+ createdAt: string;
1400
+ };
1401
+ pipeline: {
1402
+ version: number;
1403
+ config: DataSourcesIngestConfig;
1404
+ };
1405
+ placement: DataSourcesPlacement | null;
1355
1406
  }
1356
1407
  /**
1357
1408
  * POST /datasources/revectorize — starts a new candidate pipeline alongside the live one.
@@ -1405,7 +1456,7 @@ interface DataSourcesDocumentDeleteResult {
1405
1456
  */
1406
1457
 
1407
1458
  /** @internal Consumed by the CLI skin; waitForIngest documents the default. */
1408
- declare const DEFAULT_WAIT_TIMEOUT_MS: number;
1459
+ declare const DEFAULT_WAIT_TIMEOUT_MS$1: number;
1409
1460
  /**
1410
1461
  * The per-document summary projection used by waitForIngest, status, and the
1411
1462
  * revectorize watch loop in the skin. Exported so the skin can reuse it for
@@ -1507,17 +1558,37 @@ interface DocumentsParams {
1507
1558
  slug: string;
1508
1559
  /** true → watch a candidate pipeline (revectorize in progress). */
1509
1560
  candidate?: boolean;
1561
+ /** Only these documents (at most DOCUMENTS_IDS_MAX per request). */
1562
+ ids?: string[];
1563
+ /** Page size, 1..1000 (server default 500). */
1564
+ limit?: number;
1565
+ /** `nextCursor` from the previous page. */
1566
+ cursor?: string;
1510
1567
  }
1568
+ /** The server's cap on `ids` per request; `allDocuments` chunks to it. */
1569
+ declare const DOCUMENTS_IDS_MAX = 200;
1511
1570
  /**
1512
- * Fetch per-document ingest state for one pipeline.
1571
+ * Fetch one page of per-document ingest state for one pipeline, oldest first.
1513
1572
  *
1514
1573
  * Returns an empty document list when the data source does not exist yet.
1515
- * Pass `candidate: true` to watch a revectorization in progress.
1574
+ * Pass `candidate: true` to watch a revectorization in progress. Follow
1575
+ * `nextCursor` for the next page, or use `allDocuments` to walk them all.
1516
1576
  *
1517
1577
  * @example
1518
- * const { documents } = await admin.dataSources.documents({ slug: 'policies' });
1578
+ * const { documents, nextCursor } = await admin.dataSources.documents({ slug: 'policies' });
1519
1579
  */
1520
1580
  declare function documents(ctx: AdminContext, params: DocumentsParams): Promise<DataSourcesDocumentsResult>;
1581
+ /**
1582
+ * Every document (or every one of `ids`), following pages to the end.
1583
+ *
1584
+ * With `ids`, requests are chunked to the server's per-request cap, so a wait
1585
+ * over hundreds of just-added files stays a handful of small calls rather than
1586
+ * a walk of the whole source.
1587
+ *
1588
+ * @example
1589
+ * const docs = await admin.dataSources.allDocuments({ slug: 'policies' });
1590
+ */
1591
+ declare function allDocuments(ctx: AdminContext, params: Omit<DocumentsParams, 'cursor' | 'limit'>): Promise<DataSourcesDocumentStatus[]>;
1521
1592
  /**
1522
1593
  * List all data sources with document counts, build progress, and active
1523
1594
  * version metadata.
@@ -1525,7 +1596,7 @@ declare function documents(ctx: AdminContext, params: DocumentsParams): Promise<
1525
1596
  * @example
1526
1597
  * const { dataSources } = await admin.dataSources.list();
1527
1598
  */
1528
- declare function list$6(ctx: AdminContext): Promise<DataSourcesListResult>;
1599
+ declare function list$7(ctx: AdminContext): Promise<DataSourcesListResult>;
1529
1600
  interface SearchParams {
1530
1601
  /** Data source slug. */
1531
1602
  slug: string;
@@ -1588,6 +1659,15 @@ interface ConfigSetParams {
1588
1659
  * required.
1589
1660
  */
1590
1661
  retrieval?: DataSourcesRetrievalUpdate;
1662
+ /**
1663
+ * Where the corpus lives: a dedicated resource (see `admin.infra`) or the
1664
+ * shared pool. Accepted only while the source has no built documents —
1665
+ * moving a populated source is refused with
1666
+ * `placement_change_requires_migration`.
1667
+ */
1668
+ placement?: {
1669
+ resourceId: string;
1670
+ } | 'shared';
1591
1671
  }
1592
1672
  /**
1593
1673
  * Update pipeline configuration.
@@ -1605,6 +1685,37 @@ interface ConfigSetParams {
1605
1685
  * });
1606
1686
  */
1607
1687
  declare function configSet(ctx: AdminContext, params: ConfigSetParams): Promise<DataSourcesConfigUpdateResult>;
1688
+ interface CreateParams {
1689
+ /** Data source slug: lowercase [a-z0-9_-], up to 64 characters. */
1690
+ slug: string;
1691
+ /** Display name. */
1692
+ name?: string;
1693
+ /** Pinned ingest settings for the new pipeline; platform defaults otherwise. */
1694
+ ingest?: DataSourcesIngestUpdate;
1695
+ /**
1696
+ * Where the corpus lives from the start: a dedicated resource (see
1697
+ * `admin.infra`) or the shared pool (the default).
1698
+ */
1699
+ placement?: {
1700
+ resourceId: string;
1701
+ } | 'shared';
1702
+ }
1703
+ /**
1704
+ * Create an empty data source, optionally on dedicated capacity.
1705
+ *
1706
+ * The one-step way to start a corpus on a resource. `add` also creates a
1707
+ * source on first use, but on the shared pool, and a source with built
1708
+ * documents cannot move, so a corpus meant for dedicated capacity starts here.
1709
+ * Calling this for a source that already exists returns it; a placement given
1710
+ * then follows `configSet`'s rule and moves it only while it is empty.
1711
+ *
1712
+ * @throws AdminApiError `invalid_data_source` (400), `data_source_limit` (422),
1713
+ * `resource_not_found` (404), `resource_destroyed` (422),
1714
+ * `placement_change_requires_migration` (422).
1715
+ * @example
1716
+ * await admin.dataSources.create({ slug: 'archive', placement: { resourceId } });
1717
+ */
1718
+ declare function create$1(ctx: AdminContext, params: CreateParams): Promise<DataSourcesCreateResult>;
1608
1719
  interface RevectorizeParams {
1609
1720
  /** Data source slug. */
1610
1721
  slug: string;
@@ -1700,7 +1811,8 @@ declare function deleteSource(ctx: AdminContext, slug: string): Promise<DataSour
1700
1811
  type dataSources_AddDocumentParams = AddDocumentParams;
1701
1812
  type dataSources_AddDocumentResult = AddDocumentResult;
1702
1813
  type dataSources_ConfigSetParams = ConfigSetParams;
1703
- declare const dataSources_DEFAULT_WAIT_TIMEOUT_MS: typeof DEFAULT_WAIT_TIMEOUT_MS;
1814
+ type dataSources_CreateParams = CreateParams;
1815
+ declare const dataSources_DOCUMENTS_IDS_MAX: typeof DOCUMENTS_IDS_MAX;
1704
1816
  type dataSources_DocumentsParams = DocumentsParams;
1705
1817
  type dataSources_DropParams = DropParams;
1706
1818
  type dataSources_PromoteParams = PromoteParams;
@@ -1711,6 +1823,7 @@ type dataSources_SummarizedDocument = SummarizedDocument;
1711
1823
  type dataSources_WaitForIngestParams = WaitForIngestParams;
1712
1824
  type dataSources_WaitForIngestResult = WaitForIngestResult;
1713
1825
  declare const dataSources_addDocument: typeof addDocument;
1826
+ declare const dataSources_allDocuments: typeof allDocuments;
1714
1827
  declare const dataSources_configGet: typeof configGet;
1715
1828
  declare const dataSources_configSet: typeof configSet;
1716
1829
  declare const dataSources_deleteSource: typeof deleteSource;
@@ -1723,7 +1836,7 @@ declare const dataSources_search: typeof search;
1723
1836
  declare const dataSources_summarize: typeof summarize;
1724
1837
  declare const dataSources_waitForIngest: typeof waitForIngest;
1725
1838
  declare namespace dataSources {
1726
- export { type dataSources_AddDocumentParams as AddDocumentParams, type dataSources_AddDocumentResult as AddDocumentResult, type dataSources_ConfigSetParams as ConfigSetParams, dataSources_DEFAULT_WAIT_TIMEOUT_MS as DEFAULT_WAIT_TIMEOUT_MS, type dataSources_DocumentsParams as DocumentsParams, type dataSources_DropParams as DropParams, type dataSources_PromoteParams as PromoteParams, type dataSources_RevectorizeParams as RevectorizeParams, type dataSources_RmParams as RmParams, type dataSources_SearchParams as SearchParams, type dataSources_SummarizedDocument as SummarizedDocument, type dataSources_WaitForIngestParams as WaitForIngestParams, type dataSources_WaitForIngestResult as WaitForIngestResult, dataSources_addDocument as addDocument, dataSources_configGet as configGet, dataSources_configSet as configSet, dataSources_deleteSource as deleteSource, dataSources_documents as documents, dataSources_drop as drop, list$6 as list, dataSources_promote as promote, dataSources_revectorize as revectorize, dataSources_rm as rm, dataSources_search as search, dataSources_summarize as summarize, dataSources_waitForIngest as waitForIngest };
1839
+ export { type dataSources_AddDocumentParams as AddDocumentParams, type dataSources_AddDocumentResult as AddDocumentResult, type dataSources_ConfigSetParams as ConfigSetParams, type dataSources_CreateParams as CreateParams, DEFAULT_WAIT_TIMEOUT_MS$1 as DEFAULT_WAIT_TIMEOUT_MS, dataSources_DOCUMENTS_IDS_MAX as DOCUMENTS_IDS_MAX, type dataSources_DocumentsParams as DocumentsParams, type dataSources_DropParams as DropParams, type dataSources_PromoteParams as PromoteParams, type dataSources_RevectorizeParams as RevectorizeParams, type dataSources_RmParams as RmParams, type dataSources_SearchParams as SearchParams, type dataSources_SummarizedDocument as SummarizedDocument, type dataSources_WaitForIngestParams as WaitForIngestParams, type dataSources_WaitForIngestResult as WaitForIngestResult, dataSources_addDocument as addDocument, dataSources_allDocuments as allDocuments, dataSources_configGet as configGet, dataSources_configSet as configSet, create$1 as create, dataSources_deleteSource as deleteSource, dataSources_documents as documents, dataSources_drop as drop, list$7 as list, dataSources_promote as promote, dataSources_revectorize as revectorize, dataSources_rm as rm, dataSources_search as search, dataSources_summarize as summarize, dataSources_waitForIngest as waitForIngest };
1727
1840
  }
1728
1841
 
1729
1842
  /**
@@ -2049,7 +2162,7 @@ interface DomainsCustomRetryResult {
2049
2162
  * @example
2050
2163
  * const { subdomain } = await admin.domains.get();
2051
2164
  */
2052
- declare function get$4(ctx: AdminContext): Promise<DomainsGetResult>;
2165
+ declare function get$5(ctx: AdminContext): Promise<DomainsGetResult>;
2053
2166
  /**
2054
2167
  * Set the app's platform subdomain.
2055
2168
  *
@@ -2150,7 +2263,7 @@ declare const domains_customRemove: typeof customRemove;
2150
2263
  declare const domains_customRetry: typeof customRetry;
2151
2264
  declare const domains_findHostname: typeof findHostname;
2152
2265
  declare namespace domains {
2153
- export { domains_check as check, domains_customAdd as customAdd, domains_customCheck as customCheck, domains_customList as customList, domains_customRemove as customRemove, domains_customRetry as customRetry, domains_findHostname as findHostname, get$4 as get, set$1 as set };
2266
+ export { domains_check as check, domains_customAdd as customAdd, domains_customCheck as customCheck, domains_customList as customList, domains_customRemove as customRemove, domains_customRetry as customRetry, domains_findHostname as findHostname, get$5 as get, set$1 as set };
2154
2267
  }
2155
2268
 
2156
2269
  /**
@@ -2907,6 +3020,237 @@ declare namespace files {
2907
3020
  export { type files_FileAccess as FileAccess, type files_FileRef as FileRef, type files_FilesLsParams as FilesLsParams, type files_FilesPutParams as FilesPutParams, files_fetchBytes as fetchBytes, files_ls as ls, files_put as put, files_remove as remove, files_sign as sign, files_stat as stat, files_summary as summary };
2908
3021
  }
2909
3022
 
3023
+ /**
3024
+ * Response types for the provisioned-infrastructure management API.
3025
+ *
3026
+ * Transcribed from youai-api:
3027
+ * src/http/routes/V2Apps/manage/provisionedResources.ts
3028
+ * src/common/Provisioning/types.ts
3029
+ * src/common/Provisioning/offerings/define.ts
3030
+ */
3031
+ /** Where a resource is in its lifecycle. Written only by the platform. */
3032
+ type InfraPhase = 'requested' | 'provisioning' | 'active' | 'hibernating' | 'hibernated' | 'resuming' | 'decommissioning' | 'destroyed' | 'failed';
3033
+ /** What the owner asked for. Written only by the owner's actions. */
3034
+ type InfraDesiredState = 'active' | 'hibernated' | 'destroyed';
3035
+ /**
3036
+ * What the platform last saw of an active resource's instance. `restoring` is
3037
+ * an instance that came back empty and is being refilled from its snapshot;
3038
+ * searches return `capacity_restoring` until it is `ready`.
3039
+ */
3040
+ type InfraHealth = 'ready' | 'not-ready' | 'missing' | 'restoring';
3041
+ /** A leasable product from the platform catalog. Prices are cogs + margin. */
3042
+ interface InfraOffering {
3043
+ id: string;
3044
+ kind: 'retrieval';
3045
+ /** User-facing size, e.g. "Small". */
3046
+ label: string;
3047
+ /** User-facing capacity, e.g. "Up to ~1M chunks". */
3048
+ description: string;
3049
+ hourlyPriceDollars: number;
3050
+ /** Hourly × 730. */
3051
+ monthlyPriceDollars: number;
3052
+ /** Retained-storage rate while hibernated. */
3053
+ hibernatedHourlyPriceDollars: number;
3054
+ hibernatedMonthlyPriceDollars: number;
3055
+ capacity: {
3056
+ maxPoints: number;
3057
+ };
3058
+ capabilities: {
3059
+ hibernate: boolean;
3060
+ };
3061
+ retired: boolean;
3062
+ }
3063
+ interface InfraResource {
3064
+ id: string;
3065
+ appId: string;
3066
+ name: string;
3067
+ kind: 'retrieval';
3068
+ offeringId: string;
3069
+ offering: InfraOffering | null;
3070
+ phase: InfraPhase;
3071
+ desiredState: InfraDesiredState;
3072
+ /** Data sources placed on this resource. Destroy is refused while > 0. */
3073
+ attachedSources: number;
3074
+ lastError: string | null;
3075
+ /** Null until the instance exists (requested, hibernated, destroyed). */
3076
+ health: InfraHealth | null;
3077
+ /**
3078
+ * What the instance is doing right now, while a transition is under way
3079
+ * ("Waiting for capacity", "Snapshotting ds_x (1/2)"); null when nothing is.
3080
+ */
3081
+ detail: string | null;
3082
+ /** When the last verified snapshot was taken; null if never. */
3083
+ lastSnapshotAt: string | null;
3084
+ activatedAt: string | null;
3085
+ hibernatedAt: string | null;
3086
+ destroyedAt: string | null;
3087
+ phaseChangedAt: string;
3088
+ createdAt: string;
3089
+ updatedAt: string;
3090
+ }
3091
+ interface InfraEvent {
3092
+ id: string;
3093
+ fromPhase: InfraPhase | null;
3094
+ toPhase: InfraPhase;
3095
+ /** `user:<id>` or `system`. */
3096
+ actor: string;
3097
+ reason: string | null;
3098
+ createdAt: string;
3099
+ }
3100
+ /** GET /infra */
3101
+ interface InfraListResult {
3102
+ resources: InfraResource[];
3103
+ offerings: InfraOffering[];
3104
+ /** False on hosts that cannot provision; `provision` will be refused. */
3105
+ provisioningAvailable: boolean;
3106
+ }
3107
+ /** GET /infra/:id */
3108
+ interface InfraGetResult {
3109
+ resource: InfraResource;
3110
+ events: InfraEvent[];
3111
+ attachedSources: {
3112
+ id: string;
3113
+ slug: string;
3114
+ name: string | null;
3115
+ }[];
3116
+ }
3117
+ /** POST /infra, /infra/:id/{hibernate,resume,destroy,rename} */
3118
+ interface InfraResourceResult {
3119
+ resource: InfraResource;
3120
+ }
3121
+
3122
+ /**
3123
+ * Provisioned-infrastructure operations: lease, park, resume and delete
3124
+ * dedicated resources (first kind: retrieval capacity for data sources).
3125
+ *
3126
+ * Ops are pure (ctx, params) → typed result. The CLI skin in
3127
+ * commands/infra.ts owns flag parsing, progress printing and exit codes.
3128
+ */
3129
+
3130
+ /** @internal Consumed by the CLI skin; waitForPhase documents the default. */
3131
+ declare const DEFAULT_WAIT_TIMEOUT_MS: number;
3132
+ interface ListParams {
3133
+ /** Include resources that have been deleted; off by default. */
3134
+ includeDestroyed?: boolean;
3135
+ }
3136
+ /**
3137
+ * The app's dedicated resources plus the offerings it can provision, with
3138
+ * their hourly and monthly prices.
3139
+ *
3140
+ * @example
3141
+ * const { resources, offerings } = await admin.infra.list();
3142
+ */
3143
+ declare function list$6(ctx: AdminContext, params?: ListParams): Promise<InfraListResult>;
3144
+ interface GetParams {
3145
+ /** Resource id. */
3146
+ id: string;
3147
+ }
3148
+ /**
3149
+ * One resource with its state timeline and the data sources placed on it.
3150
+ *
3151
+ * @throws AdminApiError `resource_not_found` (404).
3152
+ */
3153
+ declare function get$4(ctx: AdminContext, params: GetParams): Promise<InfraGetResult>;
3154
+ interface ProvisionParams {
3155
+ /** Offering id from `list().offerings`, e.g. `retrieval.small`. */
3156
+ offeringId: string;
3157
+ /** Display name; defaults to the offering label. */
3158
+ name?: string;
3159
+ }
3160
+ /**
3161
+ * Lease a new resource. Spends credits: the workspace must have a month's
3162
+ * worth available before the request is accepted; nothing is charged until
3163
+ * activation, and from then the resource bills by the hour.
3164
+ *
3165
+ * The response is the row in `requested`; the platform brings it to `active`
3166
+ * within a minute or so. Use `waitForPhase` to block on that.
3167
+ *
3168
+ * @throws AdminApiError `offering_not_found` (400), `offering_retired` (422),
3169
+ * `provisioning_unavailable` (422), `insufficient_credits` (402).
3170
+ * @example
3171
+ * const { resource } = await admin.infra.provision({ offeringId: 'retrieval.small' });
3172
+ */
3173
+ declare function provision(ctx: AdminContext, params: ProvisionParams): Promise<InfraResourceResult>;
3174
+ interface ResourceIdParams {
3175
+ /** Resource id. */
3176
+ id: string;
3177
+ }
3178
+ /**
3179
+ * Park an active resource. Data is kept; searches on its data sources return
3180
+ * `capacity_hibernating` while it parks and `capacity_hibernated` once parked,
3181
+ * until it resumes; billing drops to the retained-storage rate.
3182
+ *
3183
+ * @throws AdminApiError `resource_not_found` (404), `invalid_transition` (422).
3184
+ */
3185
+ declare function hibernate(ctx: AdminContext, params: ResourceIdParams): Promise<InfraResourceResult>;
3186
+ /**
3187
+ * Bring a hibernated (or failed) resource back to active.
3188
+ *
3189
+ * @throws AdminApiError `resource_not_found` (404), `invalid_transition` (422).
3190
+ */
3191
+ declare function resume(ctx: AdminContext, params: ResourceIdParams): Promise<InfraResourceResult>;
3192
+ /**
3193
+ * Delete a resource. Refused while any data source is placed on it — move
3194
+ * those to shared capacity (`datasources config --placement shared`) or
3195
+ * delete them first. Billing stops when the phase reaches `destroyed`.
3196
+ *
3197
+ * @throws AdminApiError `resource_not_found` (404),
3198
+ * `resource_has_attachments` (422), `invalid_transition` (422).
3199
+ */
3200
+ declare function destroy(ctx: AdminContext, params: ResourceIdParams): Promise<InfraResourceResult>;
3201
+ interface RenameParams {
3202
+ id: string;
3203
+ name: string;
3204
+ }
3205
+ /** @throws AdminApiError `resource_not_found` (404), `invalid_name` (400). */
3206
+ declare function rename(ctx: AdminContext, params: RenameParams): Promise<InfraResourceResult>;
3207
+ interface WaitForPhaseParams {
3208
+ id: string;
3209
+ /** The phase(s) that count as done. */
3210
+ phases: InfraPhase[];
3211
+ /** Default 10 minutes. */
3212
+ timeoutMs?: number;
3213
+ onProgress?: (message: string) => void;
3214
+ }
3215
+ type WaitForPhaseResult = {
3216
+ status: 'done';
3217
+ resource: InfraResource;
3218
+ } | {
3219
+ status: 'failed';
3220
+ resource: InfraResource;
3221
+ error: string;
3222
+ } | {
3223
+ status: 'timeout';
3224
+ resource: InfraResource;
3225
+ error: string;
3226
+ };
3227
+ /**
3228
+ * Poll a resource until it reaches one of `phases`, fails, or the timeout
3229
+ * elapses. A `failed` phase returns immediately with the platform's error.
3230
+ *
3231
+ * @example
3232
+ * const result = await admin.infra.waitForPhase({ id, phases: ['active'] });
3233
+ */
3234
+ declare function waitForPhase(ctx: AdminContext, params: WaitForPhaseParams): Promise<WaitForPhaseResult>;
3235
+
3236
+ declare const infra_DEFAULT_WAIT_TIMEOUT_MS: typeof DEFAULT_WAIT_TIMEOUT_MS;
3237
+ type infra_GetParams = GetParams;
3238
+ type infra_ListParams = ListParams;
3239
+ type infra_ProvisionParams = ProvisionParams;
3240
+ type infra_RenameParams = RenameParams;
3241
+ type infra_ResourceIdParams = ResourceIdParams;
3242
+ type infra_WaitForPhaseParams = WaitForPhaseParams;
3243
+ type infra_WaitForPhaseResult = WaitForPhaseResult;
3244
+ declare const infra_destroy: typeof destroy;
3245
+ declare const infra_hibernate: typeof hibernate;
3246
+ declare const infra_provision: typeof provision;
3247
+ declare const infra_rename: typeof rename;
3248
+ declare const infra_resume: typeof resume;
3249
+ declare const infra_waitForPhase: typeof waitForPhase;
3250
+ declare namespace infra {
3251
+ export { infra_DEFAULT_WAIT_TIMEOUT_MS as DEFAULT_WAIT_TIMEOUT_MS, type infra_GetParams as GetParams, type infra_ListParams as ListParams, type infra_ProvisionParams as ProvisionParams, type infra_RenameParams as RenameParams, type infra_ResourceIdParams as ResourceIdParams, type infra_WaitForPhaseParams as WaitForPhaseParams, type infra_WaitForPhaseResult as WaitForPhaseResult, infra_destroy as destroy, get$4 as get, infra_hibernate as hibernate, list$6 as list, infra_provision as provision, infra_rename as rename, infra_resume as resume, infra_waitForPhase as waitForPhase };
3252
+ }
3253
+
2910
3254
  /**
2911
3255
  * Result types for the `issues` CLI commands.
2912
3256
  *
@@ -3794,12 +4138,30 @@ interface V2BuildLogEntry {
3794
4138
  }
3795
4139
  /** Terminal and in-progress states a release moves through. */
3796
4140
  type V2ReleaseStatus = 'building' | 'compiled' | 'live' | 'preview' | 'dev' | 'failed' | 'superseded';
4141
+ /**
4142
+ * Why a failed release failed — derived server-side from the build log
4143
+ * (describeReleaseFailure() in youai-api) and present on every release
4144
+ * shape. All three are null unless `status` is 'failed'.
4145
+ *
4146
+ * `failureKind` is the field to branch on:
4147
+ * 'interrupted' — the build's orchestrator died (platform restart); the
4148
+ * platform retries once automatically. Transient.
4149
+ * 'unbuildable' — the commit couldn't be read as an app (mindstudio.json
4150
+ * missing/invalid). Fix the commit; nothing to retry.
4151
+ * 'build' — the build itself failed (compile error, deploy step).
4152
+ */
4153
+ interface ReleaseFailureFields {
4154
+ failureReason: string | null;
4155
+ /** Build stage that was running when it failed (`interfaces`, `promote`…). */
4156
+ failurePhase: string | null;
4157
+ failureKind: 'build' | 'interrupted' | 'unbuildable' | null;
4158
+ }
3797
4159
  /**
3798
4160
  * Lightweight release projection returned by the paginated list endpoint.
3799
4161
  * Heavy fields (buildLog, manifest, methods, interfaces) are dropped.
3800
4162
  * Produced by toReleaseFragment() in youai-api.
3801
4163
  */
3802
- interface ReleaseFragment {
4164
+ interface ReleaseFragment extends ReleaseFailureFields {
3803
4165
  id: string;
3804
4166
  commitSha: string;
3805
4167
  commitInfo: V2CommitInfo;
@@ -3827,7 +4189,7 @@ interface ReleasesListResult {
3827
4189
  * Includes build log, databases, signed diff/diagnostics URLs, and the
3828
4190
  * post-deploy async progress signal.
3829
4191
  */
3830
- interface ReleasesGetResult {
4192
+ interface ReleasesGetResult extends ReleaseFailureFields {
3831
4193
  id: string;
3832
4194
  appId: string;
3833
4195
  commitSha: string;
@@ -3873,7 +4235,7 @@ interface ReleasesGetResult {
3873
4235
  * Plain release row — no databases/diff enrichment — plus previewUrl.
3874
4236
  * Used by 'releases wait', which polls this endpoint in a loop.
3875
4237
  */
3876
- interface ReleasesByCommitResult {
4238
+ interface ReleasesByCommitResult extends ReleaseFailureFields {
3877
4239
  id: string;
3878
4240
  appId: string;
3879
4241
  commitSha: string;
@@ -4262,8 +4624,16 @@ interface ReleaseSummary {
4262
4624
  buildDurationMs: number | null;
4263
4625
  publishedAt: string | null;
4264
4626
  previewUrl?: string;
4265
- /** Build failure reason from the last build-log `error` phase entry; only present when status is `failed`. */
4627
+ /** Why it failed; only present when status is `failed`. */
4266
4628
  error?: string;
4629
+ /**
4630
+ * Only present when status is `failed`. 'interrupted' means a platform
4631
+ * restart killed the build and a retry is already running — not a code
4632
+ * problem. See ReleaseFailureFields.
4633
+ */
4634
+ failureKind?: 'build' | 'interrupted' | 'unbuildable';
4635
+ /** Build stage that was running when it failed; only when `failed`. */
4636
+ failurePhase?: string;
4267
4637
  }
4268
4638
  /**
4269
4639
  * Terminal outcome of a `waitForCommit` call.
@@ -5352,6 +5722,7 @@ declare function buildClient(ctx: AdminContext): {
5352
5722
  inbox: (params?: EmailInboxParams | undefined) => Promise<EmailInboxResult>;
5353
5723
  };
5354
5724
  files: BoundOps<typeof files>;
5725
+ infra: BoundOps<typeof infra>;
5355
5726
  issues: BoundOps<typeof issues>;
5356
5727
  jewels: BoundOps<typeof jewels>;
5357
5728
  methods: BoundOps<typeof methods>;
@@ -5406,4 +5777,4 @@ declare class AdminTimeoutError extends Error {
5406
5777
 
5407
5778
  declare const admin: AdminClient;
5408
5779
 
5409
- export { AdminApiError, type AdminClient, type AdminClientOptions, type AdminContext, AdminTimeoutError, type AgentThreadDetail, type AgentThreadListItem, type AgentThreadsGetResult, type AgentThreadsListResult, type AgentToolCall, type AgentTranscriptMessage, type AgentTurnError, type AnalyticsAiHostRow, type AnalyticsAiSourcesResult, type AnalyticsAiVendorRow, type AnalyticsBatchResult, type AnalyticsCrawlersOverviewResult, type AnalyticsCrawlersRecentResult, type AnalyticsCrawlersRecentRow, type AnalyticsCrawlersResult, type AnalyticsCrawlersTimeseriesBucket, type AnalyticsCrawlersTimeseriesResult, type AnalyticsLiveResult, type AnalyticsMapPoint, type AnalyticsMapResult, type AnalyticsMetric, type AnalyticsQueryResult, type AnalyticsQueryResultRow, type AnalyticsSourceRow, type AnalyticsSourcesResult, type AppCronJobStatus, type AppCronJobStatusReason, type AppCronRunState, type AppEmailSuppression, type AppSecretRow, type CrashGroup, type CrashOccurrenceRow, type CrashesGetResult, type CrashesListResult, type CrashesOccurrencesResult, type CrashesStatsBucket, type CrashesStatsResult, type CronJobDecorated, type CronOverviewResult, type CronRunResult, type CronRunSummary, type DashboardLiveRelease, type DashboardReleaseMethod, type DashboardResult, type DataLiftFromDevResult, type DataLiftFromLiveResult, type DataSourcesBuildProgress, type DataSourcesChunkingConfig, type DataSourcesConfigResult, type DataSourcesConfigUpdateResult, type DataSourcesDeleteResult, type DataSourcesDocument, type DataSourcesDocumentConfirmResult, type DataSourcesDocumentDeleteResult, type DataSourcesDocumentStatus, type DataSourcesDocumentsResult, type DataSourcesDropResult, type DataSourcesIngestConfig, type DataSourcesIngestUpdate, type DataSourcesListEntry, type DataSourcesListResult, type DataSourcesPromoteResult, type DataSourcesRetrievalConfig, type DataSourcesRetrievalUpdate, type DataSourcesRevectorizeResult, type DataSourcesSearchCitation, type DataSourcesSearchResult, type DataSourcesSearchResultItem, type DataSourcesUploadTokenResult, type DatasetFile, type DbQueryResult, type DiagnosticsAuditEnvironment, type DiagnosticsDashboardResult, type DiagnosticsFinding, type DiagnosticsLighthouseScores, type DiagnosticsPayload, type DiagnosticsReleaseResult, type DiagnosticsRuntimeFindings, type DomainsCheckResult, type DomainsCustomAddResult, type DomainsCustomCheckResult, type DomainsCustomHostnameUiStatus, type DomainsCustomHostnameView, type DomainsCustomListResult, type DomainsCustomRemoveResult, type DomainsCustomRetryResult, type DomainsDnsInstructions, type DomainsGetResult, type DomainsSetResult, type EmailBatchLifecycle, type EmailBatchResult, type EmailBatchSummary, type EmailBatchesResult, type EmailDomainBase, type EmailEffectiveSender, type EmailInboxResult, type EmailListResult, type EmailMessageKind, type EmailMessageResult, type EmailMessageStatus, type EmailSenderTier, type EmailSendingStatusResult, type EmailStatsResult, type EmailSummary, type EmailSuppressResult, type EmailSuppressionsResult, type EmailUnsuppressResult, type EventChannelActivity, type EventsChannelsListResult, type EventsPublishResult, type EventsTailFrame, type FilesDeleteResult, type FilesFileMeta, type FilesListEntry, type FilesListResult, type FilesLsResult, type FilesScanBadge, type FilesScanFlagged, type FilesScanStore, type FilesStatResult, type FilesStoreSummaryEntry, type FilesUploadUrlResult, type FilesUrlResult, type FrontendErrorType, type InboundDnsInstructions, type InboundEmailDomainAddResult, type InboundEmailDomainCheckResult, type InboundEmailDomainDeleteResult, type InboundEmailDomainUiStatus, type InboundEmailDomainVerifyResult, type InboundEmailDomainView, type InboundEmailDomainsListResult, type InboxEmailPreview, type IssueAuthorKind, type IssueCommentRow, type IssueEventType, type IssueKind, type IssueRow, type IssueStatus, type IssuesCommentResult, type IssuesCreateResult, type IssuesDeleteResult, type IssuesGetResult, type IssuesListResult, type IssuesUpdateResult, type JewelPairRow, type JewelPairSummaryRow, type JewelVerdict, type JewelsDatasetSummary, type JewelsDryrunResult, type JewelsExportResult, type JewelsGradeResult, type JewelsGrading, type JewelsOverviewResult, type JewelsPairResult, type JewelsPairsResult, type JewelsQueueResult, type JewelsResolveResult, type JewelsRunResult, type JewelsRunsResult, type JewelsTimeseriesBucket, type JewelsTimeseriesResult, type JewelsTrainResult, type LiftedDatabase, type MethodsInvokeResult, type OutboundDnsInstructions, type OutboundEmailDomainAddResult, type OutboundEmailDomainCheckResult, type OutboundEmailDomainDeleteResult, type OutboundEmailDomainUiStatus, type OutboundEmailDomainVerifyResult, type OutboundEmailDomainView, type OutboundEmailDomainsListResult, type PlatformSuppression, type PrerenderGetResult, type PrerenderInvalidateResult, type PrerenderPage, type PrerenderPagesResult, type PrerenderViewResult, type ReleaseFragment, type ReleasesByCommitResult, type ReleasesGetResult, type ReleasesListResult, type RequestsGetResult, type RequestsListResult, type RequestsListRow, type RequestsStatsMethodBucket, type RequestsStatsMethodResult, type RequestsStatsSummaryBucket, type RequestsStatsSummaryResult, type SecretsDeleteResult, type SecretsGetResult, type SecretsListResult, type SecretsSetResult, type SettingsResult, type SuppressionSource, type TrainingLogEntry, type TrainingRunRow, type TrainingRunStatus, type UserAuthProvider, type UserListItem, type UserRecord, type UsersCreateApiKeyResult, type UsersListResult, type UsersRevokeApiKeyResult, type UsersSetRoleResult, type V2AppSettings, type V2BuildLogEntry, type V2BuildStats, type V2CommitInfo, type V2EmailMessage, type V2ReleaseStatus, type VoiceAvailableNumber, type VoiceNumbersBuyResult, type VoiceNumbersListResult, type VoiceNumbersReleaseResult, type VoiceNumbersSearchResult, type VoiceNumbersSetNameResult, type VoicePhoneNumberStatus, type VoicePhoneNumberView, type VoiceResolvedPolicy, type VoiceSessionChannel, type VoiceSessionCost, type VoiceSessionCostLine, type VoiceSessionDetail, type VoiceSessionGetResult, type VoiceSessionListItem, type VoiceSessionSip, type VoiceSessionSpeechEntry, type VoiceSessionStatus, type VoiceSessionToolEntry, type VoiceSessionTranscriptEntry, type VoiceSessionsListResult, type VoiceSettingsCeilings, type VoiceSettingsGetResult, type VoiceSettingsOverrides, type VoiceSettingsSetResult, admin, createAdminClient, admin as default };
5780
+ export { AdminApiError, type AdminClient, type AdminClientOptions, type AdminContext, AdminTimeoutError, type AgentThreadDetail, type AgentThreadListItem, type AgentThreadsGetResult, type AgentThreadsListResult, type AgentToolCall, type AgentTranscriptMessage, type AgentTurnError, type AnalyticsAiHostRow, type AnalyticsAiSourcesResult, type AnalyticsAiVendorRow, type AnalyticsBatchResult, type AnalyticsCrawlersOverviewResult, type AnalyticsCrawlersRecentResult, type AnalyticsCrawlersRecentRow, type AnalyticsCrawlersResult, type AnalyticsCrawlersTimeseriesBucket, type AnalyticsCrawlersTimeseriesResult, type AnalyticsLiveResult, type AnalyticsMapPoint, type AnalyticsMapResult, type AnalyticsMetric, type AnalyticsQueryResult, type AnalyticsQueryResultRow, type AnalyticsSourceRow, type AnalyticsSourcesResult, type AppCronJobStatus, type AppCronJobStatusReason, type AppCronRunState, type AppEmailSuppression, type AppSecretRow, type CrashGroup, type CrashOccurrenceRow, type CrashesGetResult, type CrashesListResult, type CrashesOccurrencesResult, type CrashesStatsBucket, type CrashesStatsResult, type CronJobDecorated, type CronOverviewResult, type CronRunResult, type CronRunSummary, type DashboardLiveRelease, type DashboardReleaseMethod, type DashboardResult, type DataLiftFromDevResult, type DataLiftFromLiveResult, type DataSourcesBuildProgress, type DataSourcesChunkingConfig, type DataSourcesChunkingStrategy, type DataSourcesConfigResult, type DataSourcesConfigUpdateResult, type DataSourcesCreateResult, type DataSourcesDeleteResult, type DataSourcesDocument, type DataSourcesDocumentConfirmResult, type DataSourcesDocumentDeleteResult, type DataSourcesDocumentStatus, type DataSourcesDocumentsResult, type DataSourcesDropResult, type DataSourcesIngestConfig, type DataSourcesIngestUpdate, type DataSourcesListEntry, type DataSourcesListResult, type DataSourcesPlacement, type DataSourcesPromoteResult, type DataSourcesRetrievalConfig, type DataSourcesRetrievalUpdate, type DataSourcesRevectorizeResult, type DataSourcesSearchCitation, type DataSourcesSearchResult, type DataSourcesSearchResultItem, type DataSourcesUploadTokenResult, type DatasetFile, type DbQueryResult, type DiagnosticsAuditEnvironment, type DiagnosticsDashboardResult, type DiagnosticsFinding, type DiagnosticsLighthouseScores, type DiagnosticsPayload, type DiagnosticsReleaseResult, type DiagnosticsRuntimeFindings, type DomainsCheckResult, type DomainsCustomAddResult, type DomainsCustomCheckResult, type DomainsCustomHostnameUiStatus, type DomainsCustomHostnameView, type DomainsCustomListResult, type DomainsCustomRemoveResult, type DomainsCustomRetryResult, type DomainsDnsInstructions, type DomainsGetResult, type DomainsSetResult, type EmailBatchLifecycle, type EmailBatchResult, type EmailBatchSummary, type EmailBatchesResult, type EmailDomainBase, type EmailEffectiveSender, type EmailInboxResult, type EmailListResult, type EmailMessageKind, type EmailMessageResult, type EmailMessageStatus, type EmailSenderTier, type EmailSendingStatusResult, type EmailStatsResult, type EmailSummary, type EmailSuppressResult, type EmailSuppressionsResult, type EmailUnsuppressResult, type EventChannelActivity, type EventsChannelsListResult, type EventsPublishResult, type EventsTailFrame, type FilesDeleteResult, type FilesFileMeta, type FilesListEntry, type FilesListResult, type FilesLsResult, type FilesScanBadge, type FilesScanFlagged, type FilesScanStore, type FilesStatResult, type FilesStoreSummaryEntry, type FilesUploadUrlResult, type FilesUrlResult, type FrontendErrorType, type InboundDnsInstructions, type InboundEmailDomainAddResult, type InboundEmailDomainCheckResult, type InboundEmailDomainDeleteResult, type InboundEmailDomainUiStatus, type InboundEmailDomainVerifyResult, type InboundEmailDomainView, type InboundEmailDomainsListResult, type InboxEmailPreview, type IssueAuthorKind, type IssueCommentRow, type IssueEventType, type IssueKind, type IssueRow, type IssueStatus, type IssuesCommentResult, type IssuesCreateResult, type IssuesDeleteResult, type IssuesGetResult, type IssuesListResult, type IssuesUpdateResult, type JewelPairRow, type JewelPairSummaryRow, type JewelVerdict, type JewelsDatasetSummary, type JewelsDryrunResult, type JewelsExportResult, type JewelsGradeResult, type JewelsGrading, type JewelsOverviewResult, type JewelsPairResult, type JewelsPairsResult, type JewelsQueueResult, type JewelsResolveResult, type JewelsRunResult, type JewelsRunsResult, type JewelsTimeseriesBucket, type JewelsTimeseriesResult, type JewelsTrainResult, type LiftedDatabase, type MethodsInvokeResult, type OutboundDnsInstructions, type OutboundEmailDomainAddResult, type OutboundEmailDomainCheckResult, type OutboundEmailDomainDeleteResult, type OutboundEmailDomainUiStatus, type OutboundEmailDomainVerifyResult, type OutboundEmailDomainView, type OutboundEmailDomainsListResult, type PlatformSuppression, type PrerenderGetResult, type PrerenderInvalidateResult, type PrerenderPage, type PrerenderPagesResult, type PrerenderViewResult, type ReleaseFailureFields, type ReleaseFragment, type ReleasesByCommitResult, type ReleasesGetResult, type ReleasesListResult, type RequestsGetResult, type RequestsListResult, type RequestsListRow, type RequestsStatsMethodBucket, type RequestsStatsMethodResult, type RequestsStatsSummaryBucket, type RequestsStatsSummaryResult, type SecretsDeleteResult, type SecretsGetResult, type SecretsListResult, type SecretsSetResult, type SettingsResult, type SuppressionSource, type TrainingLogEntry, type TrainingRunRow, type TrainingRunStatus, type UserAuthProvider, type UserListItem, type UserRecord, type UsersCreateApiKeyResult, type UsersListResult, type UsersRevokeApiKeyResult, type UsersSetRoleResult, type V2AppSettings, type V2BuildLogEntry, type V2BuildStats, type V2CommitInfo, type V2EmailMessage, type V2ReleaseStatus, type VoiceAvailableNumber, type VoiceNumbersBuyResult, type VoiceNumbersListResult, type VoiceNumbersReleaseResult, type VoiceNumbersSearchResult, type VoiceNumbersSetNameResult, type VoicePhoneNumberStatus, type VoicePhoneNumberView, type VoiceResolvedPolicy, type VoiceSessionChannel, type VoiceSessionCost, type VoiceSessionCostLine, type VoiceSessionDetail, type VoiceSessionGetResult, type VoiceSessionListItem, type VoiceSessionSip, type VoiceSessionSpeechEntry, type VoiceSessionStatus, type VoiceSessionToolEntry, type VoiceSessionTranscriptEntry, type VoiceSessionsListResult, type VoiceSettingsCeilings, type VoiceSettingsGetResult, type VoiceSettingsOverrides, type VoiceSettingsSetResult, admin, createAdminClient, admin as default };