@@ -47,6 +47,9 @@ import {
4747  DocumentsDeletionQuery , 
4848  SearchForFacetValuesParams , 
4949  SearchForFacetValuesResponse , 
50+   SeparatorTokens , 
51+   NonSeparatorTokens , 
52+   Dictionary , 
5053}  from  './types' 
5154import  {  removeUndefinedFromObject  }  from  './utils' 
5255import  {  HttpRequests  }  from  './http-requests' 
@@ -1117,6 +1120,133 @@ class Index<T extends Record<string, any> = Record<string, any>> {
11171120
11181121    return  new  EnqueuedTask ( task ) 
11191122  } 
1123+ 
1124+   /// 
1125+   /// SEPARATOR TOKENS 
1126+   /// 
1127+ 
1128+   /** 
1129+    * Get the list of all separator tokens. 
1130+    * 
1131+    * @returns  Promise containing array of separator tokens 
1132+    */ 
1133+   async  getSeparatorTokens ( ) : Promise < string [ ] >  { 
1134+     const  url  =  `indexes/${ this . uid }  /settings/separator-tokens` 
1135+     return  await  this . httpRequest . get < string [ ] > ( url ) 
1136+   } 
1137+ 
1138+   /** 
1139+    * Update the list of separator tokens. Overwrite the old list. 
1140+    * 
1141+    * @param  separatorTokens - Array that contains separator tokens. 
1142+    * @returns  Promise containing an EnqueuedTask or null 
1143+    */ 
1144+   async  updateSeparatorTokens ( 
1145+     separatorTokens : SeparatorTokens 
1146+   ) : Promise < EnqueuedTask >  { 
1147+     const  url  =  `indexes/${ this . uid }  /settings/separator-tokens` 
1148+     const  task  =  await  this . httpRequest . put ( url ,  separatorTokens ) 
1149+ 
1150+     return  new  EnqueuedTask ( task ) 
1151+   } 
1152+ 
1153+   /** 
1154+    * Reset the separator tokens list to its default value 
1155+    * 
1156+    * @returns  Promise containing an EnqueuedTask 
1157+    */ 
1158+   async  resetSeparatorTokens ( ) : Promise < EnqueuedTask >  { 
1159+     const  url  =  `indexes/${ this . uid }  /settings/separator-tokens` 
1160+     const  task  =  await  this . httpRequest . delete < EnqueuedTask > ( url ) 
1161+ 
1162+     task . enqueuedAt  =  new  Date ( task . enqueuedAt ) 
1163+ 
1164+     return  task 
1165+   } 
1166+ 
1167+   /// 
1168+   /// NON-SEPARATOR TOKENS 
1169+   /// 
1170+ 
1171+   /** 
1172+    * Get the list of all non-separator tokens. 
1173+    * 
1174+    * @returns  Promise containing array of non-separator tokens 
1175+    */ 
1176+   async  getNonSeparatorTokens ( ) : Promise < string [ ] >  { 
1177+     const  url  =  `indexes/${ this . uid }  /settings/non-separator-tokens` 
1178+     return  await  this . httpRequest . get < string [ ] > ( url ) 
1179+   } 
1180+ 
1181+   /** 
1182+    * Update the list of non-separator tokens. Overwrite the old list. 
1183+    * 
1184+    * @param  nonSeparatorTokens - Array that contains non-separator tokens. 
1185+    * @returns  Promise containing an EnqueuedTask or null 
1186+    */ 
1187+   async  updateNonSeparatorTokens ( 
1188+     nonSeparatorTokens : NonSeparatorTokens 
1189+   ) : Promise < EnqueuedTask >  { 
1190+     const  url  =  `indexes/${ this . uid }  /settings/non-separator-tokens` 
1191+     const  task  =  await  this . httpRequest . put ( url ,  nonSeparatorTokens ) 
1192+ 
1193+     return  new  EnqueuedTask ( task ) 
1194+   } 
1195+ 
1196+   /** 
1197+    * Reset the non-separator tokens list to its default value 
1198+    * 
1199+    * @returns  Promise containing an EnqueuedTask 
1200+    */ 
1201+   async  resetNonSeparatorTokens ( ) : Promise < EnqueuedTask >  { 
1202+     const  url  =  `indexes/${ this . uid }  /settings/non-separator-tokens` 
1203+     const  task  =  await  this . httpRequest . delete < EnqueuedTask > ( url ) 
1204+ 
1205+     task . enqueuedAt  =  new  Date ( task . enqueuedAt ) 
1206+ 
1207+     return  task 
1208+   } 
1209+ 
1210+   /// 
1211+   /// DICTIONARY 
1212+   /// 
1213+ 
1214+   /** 
1215+    * Get the dictionary settings of a Meilisearch index. 
1216+    * 
1217+    * @returns  Promise containing the dictionary settings 
1218+    */ 
1219+   async  getDictionary ( ) : Promise < string [ ] >  { 
1220+     const  url  =  `indexes/${ this . uid }  /settings/dictionary` 
1221+     return  await  this . httpRequest . get < string [ ] > ( url ) 
1222+   } 
1223+ 
1224+   /** 
1225+    * Update the the dictionary settings. Overwrite the old settings. 
1226+    * 
1227+    * @param  dictionary - Array that contains the new dictionary settings. 
1228+    * @returns  Promise containing an EnqueuedTask or null 
1229+    */ 
1230+   async  updateDictionary ( dictionary : Dictionary ) : Promise < EnqueuedTask >  { 
1231+     const  url  =  `indexes/${ this . uid }  /settings/dictionary` 
1232+     const  task  =  await  this . httpRequest . put ( url ,  dictionary ) 
1233+ 
1234+     return  new  EnqueuedTask ( task ) 
1235+   } 
1236+ 
1237+   /** 
1238+    * Reset the dictionary settings to its default value 
1239+    * 
1240+    * @returns  Promise containing an EnqueuedTask 
1241+    */ 
1242+   async  resetDictionary ( ) : Promise < EnqueuedTask >  { 
1243+     const  url  =  `indexes/${ this . uid }  /settings/dictionary` 
1244+     const  task  =  await  this . httpRequest . delete < EnqueuedTask > ( url ) 
1245+ 
1246+     task . enqueuedAt  =  new  Date ( task . enqueuedAt ) 
1247+ 
1248+     return  task 
1249+   } 
11201250} 
11211251
11221252export  {  Index  } 
0 commit comments