55from datetime import datetime
66from typing import Any , Dict , List , Literal , Optional , TypedDict , Union
77
8- from pydantic import BaseModel , ConfigDict , Field , TypeAdapter
8+ from pydantic import BaseModel , Extra , Field , TypeAdapter
99from typing_extensions import ReadOnly , TypeAlias , TypeAliasType
1010
1111RequestMethod = Literal ["GET" , "POST" , "DELETE" , "PUT" , "HEAD" ]
1212
13- config = ConfigDict (extra = "ignore" )
14-
1513# https://docs.pydantic.dev/2.11/concepts/types/#named-recursive-types
1614JSON = TypeAliasType (
1715 "JSON" , "Union[None, bool, str, int, float, Sequence[JSON], Mapping[str, JSON]]"
1816)
1917JSONAdapter : TypeAdapter = TypeAdapter (JSON )
2018
2119
22- class BaseBucket (BaseModel ):
20+ class BaseBucket (BaseModel , extra = Extra . ignore ):
2321 """Represents a file storage bucket."""
2422
25- model_config = config
26-
2723 id : str
2824 name : str
2925 owner : str
@@ -131,11 +127,11 @@ class CreateSignedUrlResponse(TypedDict):
131127 signedUrl : str
132128
133129
134- class SignedUrlJsonResponse (BaseModel ):
130+ class SignedUrlJsonResponse (BaseModel , extra = Extra . ignore ):
135131 signedURL : str
136132
137133
138- class SignedUrlsJsonItem (BaseModel ):
134+ class SignedUrlsJsonItem (BaseModel , extra = Extra . ignore ):
139135 error : Optional [str ]
140136 path : str
141137 signedURL : str
@@ -144,7 +140,7 @@ class SignedUrlsJsonItem(BaseModel):
144140SignedUrlsJsonResponse = TypeAdapter (list [SignedUrlsJsonItem ])
145141
146142
147- class CreateSignedUploadUrlOptions (BaseModel ):
143+ class CreateSignedUploadUrlOptions (BaseModel , extra = Extra . ignore ):
148144 upsert : str
149145
150146
@@ -162,28 +158,28 @@ class CreateSignedUploadUrlOptions(BaseModel):
162158DistanceMetric : TypeAlias = Literal ["cosine" , "euclidean" ]
163159
164160
165- class MetadataConfiguration (BaseModel ):
161+ class MetadataConfiguration (BaseModel , extra = Extra . ignore ):
166162 non_filterable_metadata_keys : Optional [List [str ]] = Field (
167163 alias = "nonFilterableMetadataKeys"
168164 )
169165
170166
171- class ListIndexesOptions (BaseModel ):
167+ class ListIndexesOptions (BaseModel , extra = Extra . ignore ):
172168 nextToken : Optional [str ] = None
173169 maxResults : Optional [int ] = None
174170 prefix : Optional [str ] = None
175171
176172
177- class ListIndexesResponseItem (BaseModel ):
173+ class ListIndexesResponseItem (BaseModel , extra = Extra . ignore ):
178174 indexName : str
179175
180176
181- class ListVectorIndexesResponse (BaseModel ):
177+ class ListVectorIndexesResponse (BaseModel , extra = Extra . ignore ):
182178 indexes : List [ListIndexesResponseItem ]
183179 nextToken : Optional [str ] = None
184180
185181
186- class VectorIndex (BaseModel ):
182+ class VectorIndex (BaseModel , extra = Extra . ignore ):
187183 index_name : str = Field (alias = "indexName" )
188184 bucket_name : str = Field (alias = "vectorBucketName" )
189185 data_type : str = Field (alias = "dataType" )
@@ -195,18 +191,18 @@ class VectorIndex(BaseModel):
195191 creation_time : Optional [datetime ] = None
196192
197193
198- class GetVectorIndexResponse (BaseModel ):
194+ class GetVectorIndexResponse (BaseModel , extra = Extra . ignore ):
199195 index : VectorIndex
200196
201197
202198VectorFilter = Dict [str , Any ]
203199
204200
205- class VectorData (BaseModel ):
201+ class VectorData (BaseModel , extra = Extra . ignore ):
206202 float32 : List [float ]
207203
208204
209- class VectorObject (BaseModel ):
205+ class VectorObject (BaseModel , extra = Extra . ignore ):
210206 key : str
211207 data : VectorData
212208 metadata : Optional [dict [str , Union [str , bool , float ]]] = None
@@ -215,27 +211,27 @@ def as_json(self) -> JSON:
215211 return {"key" : self .key , "data" : dict (self .data ), "metadata" : self .metadata }
216212
217213
218- class VectorMatch (BaseModel ):
214+ class VectorMatch (BaseModel , extra = Extra . ignore ):
219215 key : str
220216 data : Optional [VectorData ] = None
221217 distance : Optional [int ] = None
222218 metadata : Optional [dict [str , Any ]] = None
223219
224220
225- class GetVectorsResponse (BaseModel ):
221+ class GetVectorsResponse (BaseModel , extra = Extra . ignore ):
226222 vectors : List [VectorMatch ]
227223
228224
229- class ListVectorsResponse (BaseModel ):
225+ class ListVectorsResponse (BaseModel , extra = Extra . ignore ):
230226 vectors : List [VectorMatch ]
231227 nextToken : Optional [str ] = None
232228
233229
234- class QueryVectorsResponse (BaseModel ):
230+ class QueryVectorsResponse (BaseModel , extra = Extra . ignore ):
235231 matches : List [VectorMatch ]
236232
237233
238- class AnalyticsBucket (BaseModel ):
234+ class AnalyticsBucket (BaseModel , extra = Extra . ignore ):
239235 name : str
240236 type : Optional [Literal ["ANALYTICS" ]] = None
241237 format : Optional [str ] = None
@@ -249,29 +245,29 @@ class AnalyticsBucket(BaseModel):
249245AnalyticsBucketsParser = TypeAdapter (List [AnalyticsBucket ])
250246
251247
252- class AnalyticsBucketDeleteResponse (BaseModel ):
248+ class AnalyticsBucketDeleteResponse (BaseModel , extra = Extra . ignore ):
253249 message : str
254250
255251
256- class VectorBucketEncryptionConfiguration (BaseModel ):
252+ class VectorBucketEncryptionConfiguration (BaseModel , extra = Extra . ignore ):
257253 kmsKeyArn : Optional [str ] = None
258254 sseType : Optional [str ] = None
259255
260256
261- class VectorBucket (BaseModel ):
257+ class VectorBucket (BaseModel , extra = Extra . ignore ):
262258 vectorBucketName : str
263259 creationTime : Optional [datetime ] = None
264260 encryptionConfiguration : Optional [VectorBucketEncryptionConfiguration ] = None
265261
266262
267- class GetVectorBucketResponse (BaseModel ):
263+ class GetVectorBucketResponse (BaseModel , extra = Extra . ignore ):
268264 vectorBucket : VectorBucket
269265
270266
271- class ListVectorBucketsItem (BaseModel ):
267+ class ListVectorBucketsItem (BaseModel , extra = Extra . ignore ):
272268 vectorBucketName : str
273269
274270
275- class ListVectorBucketsResponse (BaseModel ):
271+ class ListVectorBucketsResponse (BaseModel , extra = Extra . ignore ):
276272 vectorBuckets : List [ListVectorBucketsItem ]
277273 nextToken : Optional [str ] = None
0 commit comments