@sanity/client 6.28.3-instruct.0 → 6.28.3-instruct.1

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.
@@ -39,6 +39,18 @@ export declare interface ActionErrorItem {
39
39
  index: number
40
40
  }
41
41
 
42
+ /** @public */
43
+ declare class AiClient {
44
+ #private
45
+ constructor(client: SanityClient, httpRequest: HttpRequest)
46
+ instruct(request: InstructAsyncInstruction): Promise<{
47
+ _id: string
48
+ }>
49
+ instruct<DocumentShape extends Record<string, Any>>(
50
+ request: InstructSyncInstruction<DocumentShape>,
51
+ ): Promise<IdentifiedSanityDocumentStub & DocumentShape>
52
+ }
53
+
42
54
  /** @internal */
43
55
  export declare type AllDocumentIdsMutationOptions = BaseMutationOptions & {
44
56
  returnFirst: false
@@ -122,110 +134,6 @@ export declare class AssetsClient {
122
134
  ): Promise<SanityAssetDocument | SanityImageAssetDocument>
123
135
  }
124
136
 
125
- /** @beta */
126
- export declare type AssistAsyncInstruction<
127
- T extends Record<string, Any_2> = Record<string, Any_2>,
128
- > = (ExistingDocumentRequest | CreateDocumentRequest<T>) & AssistRequestBase & Async
129
-
130
- /** @public */
131
- declare class AssistClient {
132
- #private
133
- constructor(client: SanityClient, httpRequest: HttpRequest)
134
- instruct(request: AssistAsyncInstruction): Promise<{
135
- _id: string
136
- }>
137
- instruct<DocumentShape extends Record<string, Any>>(
138
- request: AssistSyncInstruction<DocumentShape>,
139
- ): Promise<IdentifiedSanityDocumentStub & DocumentShape>
140
- }
141
-
142
- /** @beta */
143
- export declare type AssistInstruction<T extends Record<string, Any_2> = Record<string, Any_2>> =
144
- | AssistSyncInstruction<T>
145
- | AssistAsyncInstruction<T>
146
-
147
- declare interface AssistRequestBase {
148
- /** schemaId as reported by sanity deploy / sanity schema store */
149
- schemaId: string
150
- /** string template using $variable – more on this below under "Dynamic instruction" */
151
- instruction: string
152
- /** param values for the string template, keys are the variable name, ie if the template has "$variable", one key must be "variable" */
153
- instructionParams?: InstructionParams
154
- /**
155
- * Optional document path output target for the instruction.
156
- * When provided, the instruction will apply to this path in the document and its children.
157
- *
158
- * ## Examples
159
- * - `path: 'title'` will output to the title field in the document
160
- * - `path: 'array[_key="xx"]'` will output to the item with `_key: 'xx'` in the array field
161
- */
162
- path?: string
163
- /**
164
- * Controls sub-paths in the document that can be output to.
165
- *
166
- * The string-paths are relative to the `path` param
167
- *
168
- * Note: these path strings are less strictly validated than the `path` param itself:
169
- * if an relative-path does not exist or is invalid, it will be silently ignored.
170
- *
171
- * @see AssistRequestBase#conditionalPaths
172
- * @see AssistRequestBase#outputTypes
173
- */
174
- relativeOutputPaths?:
175
- | {
176
- include: string[]
177
- }
178
- | {
179
- exclude: string[]
180
- }
181
- /**
182
- * Controls which types the instruction is allowed to output to.
183
- *
184
- * @see AssistRequestBase#relativeOutputPaths
185
- * @see AssistRequestBase#conditionalPaths
186
- */
187
- outputTypes?:
188
- | {
189
- include: string[]
190
- }
191
- | {
192
- exclude: string[]
193
- }
194
- /**
195
- * When a type or field in the schema has a function set for `hidden` or `readOnly`, it is conditional.
196
- *
197
- * By default, AI Assist will not output to conditional `readOnly` and `hidden` fields,
198
- * ie, they are considered to resolve to `readOnly: true` / `hidden: true`.
199
- *
200
- * `conditionalPaths` param allows setting the default conditional value for
201
- * `hidden` and `readOnly` to false,
202
- * or individually set `hidden` and `readOnly` state for individual document paths.
203
- *
204
- *
205
- * Note: fields and types with explicit readOnly: true or hidden: true in the schema, are not available to AI Assist,
206
- * and cannot be changed via conditionalPaths.
207
- *
208
- * conditionalPaths state only apply to fields and types that have conditional `hidden` or `readOnly` in their schema definition.
209
- *
210
- * @see AssistRequestBase#relativeOutputPaths
211
- * @see AssistRequestBase#outputTypes
212
- */
213
- conditionalPaths?: {
214
- defaultReadOnly?: boolean
215
- defaultHidden?: boolean
216
- paths?: {
217
- /** path here is not a relative path: it must be the full document path, regardless of `path` param on the request itself */
218
- path: string
219
- readOnly: boolean
220
- hidden: boolean
221
- }[]
222
- }
223
- }
224
-
225
- /** @beta */
226
- export declare type AssistSyncInstruction<T extends Record<string, Any_2> = Record<string, Any_2>> =
227
- (ExistingDocumentRequest | CreateDocumentRequest<T>) & AssistRequestBase & Sync
228
-
229
137
  declare interface Async {
230
138
  /**
231
139
  * When async: true, requests responds with status 201 and {_id} as response body as soon as the request is validated.
@@ -577,12 +485,6 @@ export declare class ConnectionFailedError extends Error {
577
485
  readonly name = 'ConnectionFailedError'
578
486
  }
579
487
 
580
- /** @beta */
581
- export declare interface ConstantInstructionParam {
582
- type: 'constant'
583
- value: string
584
- }
585
-
586
488
  /** @public */
587
489
  export declare interface ContentSourceMap {
588
490
  mappings: ContentSourceMapMappings
@@ -928,23 +830,6 @@ declare interface ExistingDocumentRequest {
928
830
  documentId: string
929
831
  }
930
832
 
931
- /**
932
- *
933
- * Includes a LLM-friendly version of the field value in the instruction
934
- * @beta
935
- * */
936
- export declare interface FieldInstructionParam {
937
- type: 'field'
938
- /**
939
- * Examples: 'title', 'array[_key=="key"].field
940
- */
941
- path: string
942
- /**
943
- * If omitted, implicitly uses the documentId of the instruction target
944
- */
945
- documentId?: string
946
- }
947
-
948
833
  /** @public */
949
834
  export declare type FilterDefault = (props: {
950
835
  /**
@@ -1011,13 +896,6 @@ export declare type FirstDocumentMutationOptions = BaseMutationOptions & {
1011
896
  returnDocuments?: true
1012
897
  }
1013
898
 
1014
- /** @beta */
1015
- export declare interface GroqInstructionParam {
1016
- type: 'groq'
1017
- query: string
1018
- params?: Record<string, string>
1019
- }
1020
-
1021
899
  /** @public */
1022
900
  export declare type HttpRequest = {
1023
901
  (options: RequestOptions, requester: Requester): ReturnType<Requester>
@@ -1079,15 +957,141 @@ export declare type InsertPatch =
1079
957
  }
1080
958
 
1081
959
  /** @beta */
1082
- export declare type InstructionParam =
960
+ export declare type InstructAsyncInstruction<
961
+ T extends Record<string, Any_2> = Record<string, Any_2>,
962
+ > = (ExistingDocumentRequest | CreateDocumentRequest<T>) & InstructRequestBase & Async
963
+
964
+ /** @beta */
965
+ export declare interface InstructConstantInstructionParam {
966
+ type: 'constant'
967
+ value: string
968
+ }
969
+
970
+ /**
971
+ *
972
+ * Includes a LLM-friendly version of the field value in the instruction
973
+ * @beta
974
+ * */
975
+ export declare interface InstructFieldInstructionParam {
976
+ type: 'field'
977
+ /**
978
+ * Examples: 'title', 'array[_key=="key"].field'
979
+ */
980
+ path: string
981
+ /**
982
+ * If omitted, implicitly uses the documentId of the instruction target
983
+ */
984
+ documentId?: string
985
+ }
986
+
987
+ /**
988
+ * Includes a LLM-friendly version of GROQ query result in the instruction
989
+ * @beta
990
+ * */
991
+ export declare interface InstructGroqInstructionParam {
992
+ type: 'groq'
993
+ query: string
994
+ params?: Record<string, string>
995
+ }
996
+
997
+ /** @beta */
998
+ export declare type InstructInstruction<T extends Record<string, Any_2> = Record<string, Any_2>> =
999
+ | InstructSyncInstruction<T>
1000
+ | InstructAsyncInstruction<T>
1001
+
1002
+ /** @beta */
1003
+ export declare type InstructInstructionParam =
1083
1004
  | string
1084
- | ConstantInstructionParam
1085
- | FieldInstructionParam
1005
+ | InstructConstantInstructionParam
1006
+ | InstructFieldInstructionParam
1086
1007
  | DocumentInstructionParam
1087
- | GroqInstructionParam
1008
+ | InstructGroqInstructionParam
1009
+
1010
+ /** @beta */
1011
+ export declare type InstructInstructionParams = Record<string, InstructInstructionParam>
1012
+
1013
+ declare interface InstructRequestBase {
1014
+ /** schemaId as reported by sanity deploy / sanity schema store */
1015
+ schemaId: string
1016
+ /** string template using $variable – more on this below under "Dynamic instruction" */
1017
+ instruction: string
1018
+ /** param values for the string template, keys are the variable name, ie if the template has "$variable", one key must be "variable" */
1019
+ instructionParams?: InstructInstructionParams
1020
+ /**
1021
+ * Optional document path output target for the instruction.
1022
+ * When provided, the instruction will apply to this path in the document and its children.
1023
+ *
1024
+ * ## Examples
1025
+ * - `path: 'title'` will output to the title field in the document
1026
+ * - `path: 'array[_key="xx"]'` will output to the item with `_key: 'xx'` in the array field
1027
+ */
1028
+ path?: string
1029
+ /**
1030
+ * Controls sub-paths in the document that can be output to.
1031
+ *
1032
+ * The string-paths are relative to the `path` param
1033
+ *
1034
+ * Note: these path strings are less strictly validated than the `path` param itself:
1035
+ * if an relative-path does not exist or is invalid, it will be silently ignored.
1036
+ *
1037
+ * @see InstructRequestBase#conditionalPaths
1038
+ * @see InstructRequestBase#outputTypes
1039
+ */
1040
+ relativeOutputPaths?:
1041
+ | {
1042
+ include: string[]
1043
+ }
1044
+ | {
1045
+ exclude: string[]
1046
+ }
1047
+ /**
1048
+ * Controls which types the instruction is allowed to output to.
1049
+ *
1050
+ * @see InstructRequestBase#relativeOutputPaths
1051
+ * @see InstructRequestBase#conditionalPaths
1052
+ */
1053
+ outputTypes?:
1054
+ | {
1055
+ include: string[]
1056
+ }
1057
+ | {
1058
+ exclude: string[]
1059
+ }
1060
+ /**
1061
+ * When a type or field in the schema has a function set for `hidden` or `readOnly`, it is conditional.
1062
+ *
1063
+ * By default, AI Instruct will not output to conditional `readOnly` and `hidden` fields,
1064
+ * ie, they are considered to resolve to `readOnly: true` / `hidden: true`.
1065
+ *
1066
+ * `conditionalPaths` param allows setting the default conditional value for
1067
+ * `hidden` and `readOnly` to false,
1068
+ * or individually set `hidden` and `readOnly` state for individual document paths.
1069
+ *
1070
+ *
1071
+ * Note: fields and types with explicit readOnly: true or hidden: true in the schema, are not available to AI Instruct,
1072
+ * and cannot be changed via conditionalPaths.
1073
+ *
1074
+ * conditionalPaths state only apply to fields and types that have conditional `hidden` or `readOnly` in their schema definition.
1075
+ *
1076
+ * @see InstructRequestBase#relativeOutputPaths
1077
+ * @see InstructRequestBase#outputTypes
1078
+ */
1079
+ conditionalPaths?: {
1080
+ defaultReadOnly?: boolean
1081
+ defaultHidden?: boolean
1082
+ paths?: {
1083
+ /** path here is not a relative path: it must be the full document path, regardless of `path` param on the request itself */
1084
+ path: string
1085
+ readOnly: boolean
1086
+ hidden: boolean
1087
+ }[]
1088
+ }
1089
+ }
1088
1090
 
1089
1091
  /** @beta */
1090
- export declare type InstructionParams = Record<string, InstructionParam>
1092
+ export declare type InstructSyncInstruction<
1093
+ T extends Record<string, Any_2> = Record<string, Any_2>,
1094
+ > = (ExistingDocumentRequest | CreateDocumentRequest<T>) & InstructRequestBase & Sync
1091
1095
 
1092
1096
  /**
1093
1097
  * Set up a listener that will be notified when mutations occur on documents matching the provided query/filter.
@@ -1449,6 +1453,18 @@ export declare type MutationSelectionQueryParams = {
1449
1453
  [key: string]: Any
1450
1454
  }
1451
1455
 
1456
+ /** @public */
1457
+ declare class ObservableAiClient {
1458
+ #private
1459
+ constructor(client: ObservableSanityClient, httpRequest: HttpRequest)
1460
+ instruct(request: InstructAsyncInstruction): Observable<{
1461
+ _id: string
1462
+ }>
1463
+ instruct<DocumentShape extends Record<string, Any>>(
1464
+ request: InstructSyncInstruction<DocumentShape>,
1465
+ ): Observable<IdentifiedSanityDocumentStub & DocumentShape>
1466
+ }
1467
+
1452
1468
  /** @internal */
1453
1469
  export declare class ObservableAssetsClient {
1454
1470
  #private
@@ -1503,18 +1519,6 @@ export declare class ObservableAssetsClient {
1503
1519
  >
1504
1520
  }
1505
1521
 
1506
- /** @public */
1507
- declare class ObservableAssistClient {
1508
- #private
1509
- constructor(client: ObservableSanityClient, httpRequest: HttpRequest)
1510
- instruct(request: AssistAsyncInstruction): Observable<{
1511
- _id: string
1512
- }>
1513
- instruct<DocumentShape extends Record<string, Any>>(
1514
- request: AssistSyncInstruction<DocumentShape>,
1515
- ): Observable<IdentifiedSanityDocumentStub & DocumentShape>
1516
- }
1517
-
1518
1522
  /** @internal */
1519
1523
  export declare class ObservableDatasetsClient {
1520
1524
  #private
@@ -1638,7 +1642,7 @@ export declare class ObservableSanityClient {
1638
1642
  live: LiveClient
1639
1643
  projects: ObservableProjectsClient
1640
1644
  users: ObservableUsersClient
1641
- assist: ObservableAssistClient
1645
+ ai: ObservableAiClient
1642
1646
  /**
1643
1647
  * Instance properties
1644
1648
  */
@@ -2558,7 +2562,7 @@ export declare class SanityClient {
2558
2562
  live: LiveClient
2559
2563
  projects: ProjectsClient
2560
2564
  users: UsersClient
2561
- assist: AssistClient
2565
+ ai: AiClient
2562
2566
  /**
2563
2567
  * Observable version of the Sanity client, with the same configuration as the promise-based one
2564
2568
  */