turbopuffer 2.4.0 → 2.6.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 (65) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +28 -0
  3. data/README.md +1 -10
  4. data/lib/turbopuffer/client.rb +2 -2
  5. data/lib/turbopuffer/internal/type/union.rb +17 -7
  6. data/lib/turbopuffer/models/attribute_schema.rb +4 -1
  7. data/lib/turbopuffer/models/attribute_schema_drop.rb +19 -0
  8. data/lib/turbopuffer/models/copy_from_namespace_operation.rb +84 -0
  9. data/lib/turbopuffer/models/copy_from_namespace_operation_result.rb +37 -0
  10. data/lib/turbopuffer/models/namespace_explain_query_params.rb +10 -1
  11. data/lib/turbopuffer/models/namespace_metadata.rb +21 -2
  12. data/lib/turbopuffer/models/namespace_metadata_patch.rb +10 -1
  13. data/lib/turbopuffer/models/namespace_multi_query_params.rb +45 -2
  14. data/lib/turbopuffer/models/namespace_poll_copy_from_params.rb +26 -0
  15. data/lib/turbopuffer/models/namespace_query_params.rb +10 -1
  16. data/lib/turbopuffer/models/namespace_start_copy_from_params.rb +53 -0
  17. data/lib/turbopuffer/models/namespace_start_copy_from_response.rb +17 -0
  18. data/lib/turbopuffer/models/namespace_update_schema_params.rb +2 -2
  19. data/lib/turbopuffer/models/namespace_write_params.rb +15 -3
  20. data/lib/turbopuffer/models/operation_error.rb +46 -0
  21. data/lib/turbopuffer/models/rerank_limit.rb +18 -0
  22. data/lib/turbopuffer/models/write_result.rb +112 -0
  23. data/lib/turbopuffer/models.rb +16 -0
  24. data/lib/turbopuffer/resources/namespaces.rb +85 -7
  25. data/lib/turbopuffer/version.rb +1 -1
  26. data/lib/turbopuffer.rb +9 -0
  27. data/rbi/turbopuffer/client.rbi +2 -2
  28. data/rbi/turbopuffer/models/attribute_schema.rbi +7 -1
  29. data/rbi/turbopuffer/models/attribute_schema_drop.rbi +32 -0
  30. data/rbi/turbopuffer/models/copy_from_namespace_operation.rbi +133 -0
  31. data/rbi/turbopuffer/models/copy_from_namespace_operation_result.rbi +85 -0
  32. data/rbi/turbopuffer/models/namespace_explain_query_params.rbi +13 -0
  33. data/rbi/turbopuffer/models/namespace_metadata.rbi +30 -1
  34. data/rbi/turbopuffer/models/namespace_metadata_patch.rbi +18 -3
  35. data/rbi/turbopuffer/models/namespace_multi_query_params.rbi +54 -0
  36. data/rbi/turbopuffer/models/namespace_poll_copy_from_params.rbi +49 -0
  37. data/rbi/turbopuffer/models/namespace_query_params.rbi +13 -0
  38. data/rbi/turbopuffer/models/namespace_start_copy_from_params.rbi +113 -0
  39. data/rbi/turbopuffer/models/namespace_start_copy_from_response.rbi +30 -0
  40. data/rbi/turbopuffer/models/namespace_update_schema_params.rbi +23 -4
  41. data/rbi/turbopuffer/models/namespace_write_params.rbi +42 -4
  42. data/rbi/turbopuffer/models/operation_error.rbi +77 -0
  43. data/rbi/turbopuffer/models/rerank_limit.rbi +28 -0
  44. data/rbi/turbopuffer/models/write_result.rbi +159 -0
  45. data/rbi/turbopuffer/models.rbi +18 -0
  46. data/rbi/turbopuffer/resources/namespaces.rbi +88 -2
  47. data/sig/turbopuffer/models/attribute_schema.rbs +4 -1
  48. data/sig/turbopuffer/models/attribute_schema_drop.rbs +13 -0
  49. data/sig/turbopuffer/models/copy_from_namespace_operation.rbs +65 -0
  50. data/sig/turbopuffer/models/copy_from_namespace_operation_result.rbs +33 -0
  51. data/sig/turbopuffer/models/namespace_explain_query_params.rbs +7 -0
  52. data/sig/turbopuffer/models/namespace_metadata.rbs +17 -1
  53. data/sig/turbopuffer/models/namespace_metadata_patch.rbs +12 -3
  54. data/sig/turbopuffer/models/namespace_multi_query_params.rbs +31 -0
  55. data/sig/turbopuffer/models/namespace_poll_copy_from_params.rbs +30 -0
  56. data/sig/turbopuffer/models/namespace_query_params.rbs +7 -0
  57. data/sig/turbopuffer/models/namespace_start_copy_from_params.rbs +56 -0
  58. data/sig/turbopuffer/models/namespace_start_copy_from_response.rbs +13 -0
  59. data/sig/turbopuffer/models/namespace_write_params.rbs +7 -0
  60. data/sig/turbopuffer/models/operation_error.rbs +34 -0
  61. data/sig/turbopuffer/models/rerank_limit.rbs +13 -0
  62. data/sig/turbopuffer/models/write_result.rbs +99 -0
  63. data/sig/turbopuffer/models.rbs +16 -0
  64. data/sig/turbopuffer/resources/namespaces.rbs +21 -0
  65. metadata +29 -2
@@ -1,6 +1,9 @@
1
1
  module Turbopuffer
2
2
  module Models
3
- type attribute_schema = String | Turbopuffer::AttributeSchemaConfig
3
+ type attribute_schema =
4
+ String
5
+ | Turbopuffer::AttributeSchemaConfig
6
+ | Turbopuffer::AttributeSchemaDrop
4
7
 
5
8
  module AttributeSchema
6
9
  extend Turbopuffer::Internal::Type::Union
@@ -0,0 +1,13 @@
1
+ module Turbopuffer
2
+ module Models
3
+ type attribute_schema_drop = { drop: bool }
4
+
5
+ class AttributeSchemaDrop < Turbopuffer::Internal::Type::BaseModel
6
+ attr_accessor drop: bool
7
+
8
+ def initialize: (drop: bool) -> void
9
+
10
+ def to_hash: -> { drop: bool }
11
+ end
12
+ end
13
+ end
@@ -0,0 +1,65 @@
1
+ module Turbopuffer
2
+ module Models
3
+ type copy_from_namespace_operation =
4
+ Turbopuffer::CopyFromNamespaceOperation::Running
5
+ | Turbopuffer::CopyFromNamespaceOperation::Finished
6
+
7
+ module CopyFromNamespaceOperation
8
+ extend Turbopuffer::Internal::Type::Union
9
+
10
+ type running = { start_time: Time, status: :running, progress: String }
11
+
12
+ class Running < Turbopuffer::Internal::Type::BaseModel
13
+ attr_accessor start_time: Time
14
+
15
+ attr_accessor status: :running
16
+
17
+ attr_reader progress: String?
18
+
19
+ def progress=: (String) -> String
20
+
21
+ def initialize: (
22
+ start_time: Time,
23
+ ?progress: String,
24
+ ?status: :running
25
+ ) -> void
26
+
27
+ def to_hash: -> { start_time: Time, status: :running, progress: String }
28
+ end
29
+
30
+ type finished =
31
+ {
32
+ finish_time: Time,
33
+ result: Turbopuffer::Models::copy_from_namespace_operation_result,
34
+ start_time: Time,
35
+ status: :finished
36
+ }
37
+
38
+ class Finished < Turbopuffer::Internal::Type::BaseModel
39
+ attr_accessor finish_time: Time
40
+
41
+ attr_accessor result: Turbopuffer::Models::copy_from_namespace_operation_result
42
+
43
+ attr_accessor start_time: Time
44
+
45
+ attr_accessor status: :finished
46
+
47
+ def initialize: (
48
+ finish_time: Time,
49
+ result: Turbopuffer::Models::copy_from_namespace_operation_result,
50
+ start_time: Time,
51
+ ?status: :finished
52
+ ) -> void
53
+
54
+ def to_hash: -> {
55
+ finish_time: Time,
56
+ result: Turbopuffer::Models::copy_from_namespace_operation_result,
57
+ start_time: Time,
58
+ status: :finished
59
+ }
60
+ end
61
+
62
+ def self?.variants: -> ::Array[Turbopuffer::Models::copy_from_namespace_operation]
63
+ end
64
+ end
65
+ end
@@ -0,0 +1,33 @@
1
+ module Turbopuffer
2
+ module Models
3
+ type copy_from_namespace_operation_result =
4
+ Turbopuffer::CopyFromNamespaceOperationResult::Success
5
+ | Turbopuffer::CopyFromNamespaceOperationResult::Error
6
+
7
+ module CopyFromNamespaceOperationResult
8
+ extend Turbopuffer::Internal::Type::Union
9
+
10
+ type success = { success: Turbopuffer::WriteResult }
11
+
12
+ class Success < Turbopuffer::Internal::Type::BaseModel
13
+ attr_accessor success: Turbopuffer::WriteResult
14
+
15
+ def initialize: (success: Turbopuffer::WriteResult) -> void
16
+
17
+ def to_hash: -> { success: Turbopuffer::WriteResult }
18
+ end
19
+
20
+ type error = { error: Turbopuffer::OperationError }
21
+
22
+ class Error < Turbopuffer::Internal::Type::BaseModel
23
+ attr_accessor error: Turbopuffer::OperationError
24
+
25
+ def initialize: (error: Turbopuffer::OperationError) -> void
26
+
27
+ def to_hash: -> { error: Turbopuffer::OperationError }
28
+ end
29
+
30
+ def self?.variants: -> ::Array[Turbopuffer::Models::copy_from_namespace_operation_result]
31
+ end
32
+ end
33
+ end
@@ -12,6 +12,7 @@ module Turbopuffer
12
12
  group_by: ::Array[top],
13
13
  include_attributes: Turbopuffer::Models::include_attributes,
14
14
  limit: Turbopuffer::Models::NamespaceExplainQueryParams::limit,
15
+ offset: Integer,
15
16
  rank_by: top,
16
17
  top_k: Integer,
17
18
  vector_encoding: Turbopuffer::Models::vector_encoding
@@ -70,6 +71,10 @@ module Turbopuffer
70
71
  Turbopuffer::Models::NamespaceExplainQueryParams::limit
71
72
  ) -> Turbopuffer::Models::NamespaceExplainQueryParams::limit
72
73
 
74
+ attr_reader offset: Integer?
75
+
76
+ def offset=: (Integer) -> Integer
77
+
73
78
  attr_reader rank_by: top?
74
79
 
75
80
  def rank_by=: (top) -> top
@@ -95,6 +100,7 @@ module Turbopuffer
95
100
  ?group_by: ::Array[top],
96
101
  ?include_attributes: Turbopuffer::Models::include_attributes,
97
102
  ?limit: Turbopuffer::Models::NamespaceExplainQueryParams::limit,
103
+ ?offset: Integer,
98
104
  ?rank_by: top,
99
105
  ?top_k: Integer,
100
106
  ?vector_encoding: Turbopuffer::Models::vector_encoding,
@@ -112,6 +118,7 @@ module Turbopuffer
112
118
  group_by: ::Array[top],
113
119
  include_attributes: Turbopuffer::Models::include_attributes,
114
120
  limit: Turbopuffer::Models::NamespaceExplainQueryParams::limit,
121
+ offset: Integer,
115
122
  rank_by: top,
116
123
  top_k: Integer,
117
124
  vector_encoding: Turbopuffer::Models::vector_encoding,
@@ -10,6 +10,7 @@ module Turbopuffer
10
10
  schema: ::Hash[Symbol, Turbopuffer::AttributeSchemaConfig],
11
11
  updated_at: Time,
12
12
  pinning: Turbopuffer::NamespaceMetadata::Pinning,
13
+ read_only: bool,
13
14
  sharding: Turbopuffer::ShardingConfig
14
15
  }
15
16
 
@@ -34,6 +35,10 @@ module Turbopuffer
34
35
  Turbopuffer::NamespaceMetadata::Pinning
35
36
  ) -> Turbopuffer::NamespaceMetadata::Pinning
36
37
 
38
+ attr_reader read_only: bool?
39
+
40
+ def read_only=: (bool) -> bool
41
+
37
42
  attr_reader sharding: Turbopuffer::ShardingConfig?
38
43
 
39
44
  def sharding=: (
@@ -49,6 +54,7 @@ module Turbopuffer
49
54
  schema: ::Hash[Symbol, Turbopuffer::AttributeSchemaConfig],
50
55
  updated_at: Time,
51
56
  ?pinning: Turbopuffer::NamespaceMetadata::Pinning,
57
+ ?read_only: bool,
52
58
  ?sharding: Turbopuffer::ShardingConfig
53
59
  ) -> void
54
60
 
@@ -61,6 +67,7 @@ module Turbopuffer
61
67
  schema: ::Hash[Symbol, Turbopuffer::AttributeSchemaConfig],
62
68
  updated_at: Time,
63
69
  pinning: Turbopuffer::NamespaceMetadata::Pinning,
70
+ read_only: bool,
64
71
  sharding: Turbopuffer::ShardingConfig
65
72
  }
66
73
 
@@ -114,23 +121,32 @@ module Turbopuffer
114
121
  }
115
122
 
116
123
  type status =
117
- { ready_replicas: Integer, updated_at: Time, utilization: Float }
124
+ {
125
+ ready_replicas: Integer,
126
+ replicas: Integer,
127
+ updated_at: Time,
128
+ utilization: Float
129
+ }
118
130
 
119
131
  class Status < Turbopuffer::Internal::Type::BaseModel
120
132
  attr_accessor ready_replicas: Integer
121
133
 
134
+ attr_accessor replicas: Integer
135
+
122
136
  attr_accessor updated_at: Time
123
137
 
124
138
  attr_accessor utilization: Float
125
139
 
126
140
  def initialize: (
127
141
  ready_replicas: Integer,
142
+ replicas: Integer,
128
143
  updated_at: Time,
129
144
  utilization: Float
130
145
  ) -> void
131
146
 
132
147
  def to_hash: -> {
133
148
  ready_replicas: Integer,
149
+ replicas: Integer,
134
150
  updated_at: Time,
135
151
  utilization: Float
136
152
  }
@@ -1,17 +1,26 @@
1
1
  module Turbopuffer
2
2
  module Models
3
3
  type namespace_metadata_patch =
4
- { pinning: Turbopuffer::Models::NamespaceMetadataPatch::pinning? }
4
+ {
5
+ pinning: Turbopuffer::Models::NamespaceMetadataPatch::pinning?,
6
+ read_only: bool
7
+ }
5
8
 
6
9
  class NamespaceMetadataPatch < Turbopuffer::Internal::Type::BaseModel
7
10
  attr_accessor pinning: Turbopuffer::Models::NamespaceMetadataPatch::pinning?
8
11
 
12
+ attr_reader read_only: bool?
13
+
14
+ def read_only=: (bool) -> bool
15
+
9
16
  def initialize: (
10
- ?pinning: Turbopuffer::Models::NamespaceMetadataPatch::pinning?
17
+ ?pinning: Turbopuffer::Models::NamespaceMetadataPatch::pinning?,
18
+ ?read_only: bool
11
19
  ) -> void
12
20
 
13
21
  def to_hash: -> {
14
- pinning: Turbopuffer::Models::NamespaceMetadataPatch::pinning?
22
+ pinning: Turbopuffer::Models::NamespaceMetadataPatch::pinning?,
23
+ read_only: bool
15
24
  }
16
25
 
17
26
  type pinning = bool | Turbopuffer::PinningConfig
@@ -5,6 +5,8 @@ module Turbopuffer
5
5
  namespace: String,
6
6
  queries: ::Array[Turbopuffer::NamespaceMultiQueryParams::Query],
7
7
  consistency: Turbopuffer::NamespaceMultiQueryParams::Consistency,
8
+ limit: Turbopuffer::Models::NamespaceMultiQueryParams::limit,
9
+ offset: Integer,
8
10
  rerank_by: top,
9
11
  vector_encoding: Turbopuffer::Models::vector_encoding
10
12
  }
@@ -26,6 +28,16 @@ module Turbopuffer
26
28
  Turbopuffer::NamespaceMultiQueryParams::Consistency
27
29
  ) -> Turbopuffer::NamespaceMultiQueryParams::Consistency
28
30
 
31
+ attr_reader limit: Turbopuffer::Models::NamespaceMultiQueryParams::limit?
32
+
33
+ def limit=: (
34
+ Turbopuffer::Models::NamespaceMultiQueryParams::limit
35
+ ) -> Turbopuffer::Models::NamespaceMultiQueryParams::limit
36
+
37
+ attr_reader offset: Integer?
38
+
39
+ def offset=: (Integer) -> Integer
40
+
29
41
  attr_reader rerank_by: top?
30
42
 
31
43
  def rerank_by=: (top) -> top
@@ -40,6 +52,8 @@ module Turbopuffer
40
52
  queries: ::Array[Turbopuffer::NamespaceMultiQueryParams::Query],
41
53
  ?namespace: String,
42
54
  ?consistency: Turbopuffer::NamespaceMultiQueryParams::Consistency,
55
+ ?limit: Turbopuffer::Models::NamespaceMultiQueryParams::limit,
56
+ ?offset: Integer,
43
57
  ?rerank_by: top,
44
58
  ?vector_encoding: Turbopuffer::Models::vector_encoding,
45
59
  ?request_options: Turbopuffer::request_opts
@@ -49,6 +63,8 @@ module Turbopuffer
49
63
  namespace: String,
50
64
  queries: ::Array[Turbopuffer::NamespaceMultiQueryParams::Query],
51
65
  consistency: Turbopuffer::NamespaceMultiQueryParams::Consistency,
66
+ limit: Turbopuffer::Models::NamespaceMultiQueryParams::limit,
67
+ offset: Integer,
52
68
  rerank_by: top,
53
69
  vector_encoding: Turbopuffer::Models::vector_encoding,
54
70
  request_options: Turbopuffer::RequestOptions
@@ -64,6 +80,7 @@ module Turbopuffer
64
80
  group_by: ::Array[top],
65
81
  include_attributes: Turbopuffer::Models::include_attributes,
66
82
  limit: Turbopuffer::Models::NamespaceMultiQueryParams::Query::limit,
83
+ offset: Integer,
67
84
  rank_by: top,
68
85
  top_k: Integer
69
86
  }
@@ -107,6 +124,10 @@ module Turbopuffer
107
124
  Turbopuffer::Models::NamespaceMultiQueryParams::Query::limit
108
125
  ) -> Turbopuffer::Models::NamespaceMultiQueryParams::Query::limit
109
126
 
127
+ attr_reader offset: Integer?
128
+
129
+ def offset=: (Integer) -> Integer
130
+
110
131
  attr_reader rank_by: top?
111
132
 
112
133
  def rank_by=: (top) -> top
@@ -124,6 +145,7 @@ module Turbopuffer
124
145
  ?group_by: ::Array[top],
125
146
  ?include_attributes: Turbopuffer::Models::include_attributes,
126
147
  ?limit: Turbopuffer::Models::NamespaceMultiQueryParams::Query::limit,
148
+ ?offset: Integer,
127
149
  ?rank_by: top,
128
150
  ?top_k: Integer
129
151
  ) -> void
@@ -137,6 +159,7 @@ module Turbopuffer
137
159
  group_by: ::Array[top],
138
160
  include_attributes: Turbopuffer::Models::include_attributes,
139
161
  limit: Turbopuffer::Models::NamespaceMultiQueryParams::Query::limit,
162
+ offset: Integer,
140
163
  rank_by: top,
141
164
  top_k: Integer
142
165
  }
@@ -184,6 +207,14 @@ module Turbopuffer
184
207
  def self?.values: -> ::Array[Turbopuffer::Models::NamespaceMultiQueryParams::Consistency::level]
185
208
  end
186
209
  end
210
+
211
+ type limit = Integer | Turbopuffer::RerankLimit
212
+
213
+ module Limit
214
+ extend Turbopuffer::Internal::Type::Union
215
+
216
+ def self?.variants: -> ::Array[Turbopuffer::Models::NamespaceMultiQueryParams::limit]
217
+ end
187
218
  end
188
219
  end
189
220
  end
@@ -0,0 +1,30 @@
1
+ module Turbopuffer
2
+ module Models
3
+ type namespace_poll_copy_from_params =
4
+ { namespace: String, token: String }
5
+ & Turbopuffer::Internal::Type::request_parameters
6
+
7
+ class NamespacePollCopyFromParams < Turbopuffer::Internal::Type::BaseModel
8
+ extend Turbopuffer::Internal::Type::RequestParameters::Converter
9
+ include Turbopuffer::Internal::Type::RequestParameters
10
+
11
+ attr_reader namespace: String?
12
+
13
+ def namespace=: (String) -> String
14
+
15
+ attr_accessor token: String
16
+
17
+ def initialize: (
18
+ token: String,
19
+ ?namespace: String,
20
+ ?request_options: Turbopuffer::request_opts
21
+ ) -> void
22
+
23
+ def to_hash: -> {
24
+ namespace: String,
25
+ token: String,
26
+ request_options: Turbopuffer::RequestOptions
27
+ }
28
+ end
29
+ end
30
+ end
@@ -12,6 +12,7 @@ module Turbopuffer
12
12
  group_by: ::Array[top],
13
13
  include_attributes: Turbopuffer::Models::include_attributes,
14
14
  limit: Turbopuffer::Models::NamespaceQueryParams::limit,
15
+ offset: Integer,
15
16
  rank_by: top,
16
17
  top_k: Integer,
17
18
  vector_encoding: Turbopuffer::Models::vector_encoding
@@ -70,6 +71,10 @@ module Turbopuffer
70
71
  Turbopuffer::Models::NamespaceQueryParams::limit
71
72
  ) -> Turbopuffer::Models::NamespaceQueryParams::limit
72
73
 
74
+ attr_reader offset: Integer?
75
+
76
+ def offset=: (Integer) -> Integer
77
+
73
78
  attr_reader rank_by: top?
74
79
 
75
80
  def rank_by=: (top) -> top
@@ -95,6 +100,7 @@ module Turbopuffer
95
100
  ?group_by: ::Array[top],
96
101
  ?include_attributes: Turbopuffer::Models::include_attributes,
97
102
  ?limit: Turbopuffer::Models::NamespaceQueryParams::limit,
103
+ ?offset: Integer,
98
104
  ?rank_by: top,
99
105
  ?top_k: Integer,
100
106
  ?vector_encoding: Turbopuffer::Models::vector_encoding,
@@ -112,6 +118,7 @@ module Turbopuffer
112
118
  group_by: ::Array[top],
113
119
  include_attributes: Turbopuffer::Models::include_attributes,
114
120
  limit: Turbopuffer::Models::NamespaceQueryParams::limit,
121
+ offset: Integer,
115
122
  rank_by: top,
116
123
  top_k: Integer,
117
124
  vector_encoding: Turbopuffer::Models::vector_encoding,
@@ -0,0 +1,56 @@
1
+ module Turbopuffer
2
+ module Models
3
+ type namespace_start_copy_from_params =
4
+ {
5
+ namespace: String,
6
+ source_namespace: String,
7
+ dest_encryption: Turbopuffer::Models::encryption,
8
+ source_api_key: String,
9
+ source_region: String
10
+ }
11
+ & Turbopuffer::Internal::Type::request_parameters
12
+
13
+ class NamespaceStartCopyFromParams < Turbopuffer::Internal::Type::BaseModel
14
+ extend Turbopuffer::Internal::Type::RequestParameters::Converter
15
+ include Turbopuffer::Internal::Type::RequestParameters
16
+
17
+ attr_reader namespace: String?
18
+
19
+ def namespace=: (String) -> String
20
+
21
+ attr_accessor source_namespace: String
22
+
23
+ attr_reader dest_encryption: Turbopuffer::Models::encryption?
24
+
25
+ def dest_encryption=: (
26
+ Turbopuffer::Models::encryption
27
+ ) -> Turbopuffer::Models::encryption
28
+
29
+ attr_reader source_api_key: String?
30
+
31
+ def source_api_key=: (String) -> String
32
+
33
+ attr_reader source_region: String?
34
+
35
+ def source_region=: (String) -> String
36
+
37
+ def initialize: (
38
+ source_namespace: String,
39
+ ?namespace: String,
40
+ ?dest_encryption: Turbopuffer::Models::encryption,
41
+ ?source_api_key: String,
42
+ ?source_region: String,
43
+ ?request_options: Turbopuffer::request_opts
44
+ ) -> void
45
+
46
+ def to_hash: -> {
47
+ namespace: String,
48
+ source_namespace: String,
49
+ dest_encryption: Turbopuffer::Models::encryption,
50
+ source_api_key: String,
51
+ source_region: String,
52
+ request_options: Turbopuffer::RequestOptions
53
+ }
54
+ end
55
+ end
56
+ end
@@ -0,0 +1,13 @@
1
+ module Turbopuffer
2
+ module Models
3
+ type namespace_start_copy_from_response = { token: String }
4
+
5
+ class NamespaceStartCopyFromResponse < Turbopuffer::Internal::Type::BaseModel
6
+ attr_accessor token: String
7
+
8
+ def initialize: (token: String) -> void
9
+
10
+ def to_hash: -> { token: String }
11
+ end
12
+ end
13
+ end
@@ -5,6 +5,7 @@ module Turbopuffer
5
5
  namespace: String,
6
6
  branch_from_namespace: Turbopuffer::Models::branch_from_namespace_params,
7
7
  copy_from_namespace: Turbopuffer::Models::copy_from_namespace_params,
8
+ create_namespace: bool,
8
9
  delete_by_filter: top,
9
10
  delete_by_filter_allow_partial: bool,
10
11
  delete_condition: top,
@@ -46,6 +47,10 @@ module Turbopuffer
46
47
  Turbopuffer::Models::copy_from_namespace_params
47
48
  ) -> Turbopuffer::Models::copy_from_namespace_params
48
49
 
50
+ attr_reader create_namespace: bool?
51
+
52
+ def create_namespace=: (bool) -> bool
53
+
49
54
  attr_reader delete_by_filter: top?
50
55
 
51
56
  def delete_by_filter=: (top) -> top
@@ -134,6 +139,7 @@ module Turbopuffer
134
139
  ?namespace: String,
135
140
  ?branch_from_namespace: Turbopuffer::Models::branch_from_namespace_params,
136
141
  ?copy_from_namespace: Turbopuffer::Models::copy_from_namespace_params,
142
+ ?create_namespace: bool,
137
143
  ?delete_by_filter: top,
138
144
  ?delete_by_filter_allow_partial: bool,
139
145
  ?delete_condition: top,
@@ -159,6 +165,7 @@ module Turbopuffer
159
165
  namespace: String,
160
166
  branch_from_namespace: Turbopuffer::Models::branch_from_namespace_params,
161
167
  copy_from_namespace: Turbopuffer::Models::copy_from_namespace_params,
168
+ create_namespace: bool,
162
169
  delete_by_filter: top,
163
170
  delete_by_filter_allow_partial: bool,
164
171
  delete_condition: top,
@@ -0,0 +1,34 @@
1
+ module Turbopuffer
2
+ module Models
3
+ type operation_error =
4
+ { detail: Turbopuffer::OperationError::Detail, status_code: Integer }
5
+
6
+ class OperationError < Turbopuffer::Internal::Type::BaseModel
7
+ attr_accessor detail: Turbopuffer::OperationError::Detail
8
+
9
+ attr_accessor status_code: Integer
10
+
11
+ def initialize: (
12
+ detail: Turbopuffer::OperationError::Detail,
13
+ status_code: Integer
14
+ ) -> void
15
+
16
+ def to_hash: -> {
17
+ detail: Turbopuffer::OperationError::Detail,
18
+ status_code: Integer
19
+ }
20
+
21
+ type detail = { error: String, status: :error }
22
+
23
+ class Detail < Turbopuffer::Internal::Type::BaseModel
24
+ attr_accessor error: String
25
+
26
+ attr_accessor status: :error
27
+
28
+ def initialize: (error: String, ?status: :error) -> void
29
+
30
+ def to_hash: -> { error: String, status: :error }
31
+ end
32
+ end
33
+ end
34
+ end
@@ -0,0 +1,13 @@
1
+ module Turbopuffer
2
+ module Models
3
+ type rerank_limit = { total: Integer }
4
+
5
+ class RerankLimit < Turbopuffer::Internal::Type::BaseModel
6
+ attr_accessor total: Integer
7
+
8
+ def initialize: (total: Integer) -> void
9
+
10
+ def to_hash: -> { total: Integer }
11
+ end
12
+ end
13
+ end
@@ -0,0 +1,99 @@
1
+ module Turbopuffer
2
+ module Models
3
+ type write_result =
4
+ {
5
+ billing: Turbopuffer::WriteBilling,
6
+ message: String,
7
+ rows_affected: Integer,
8
+ status: :OK,
9
+ deleted_ids: ::Array[Turbopuffer::Models::id],
10
+ patched_ids: ::Array[Turbopuffer::Models::id],
11
+ performance: Turbopuffer::WritePerformance,
12
+ rows_deleted: Integer,
13
+ rows_patched: Integer,
14
+ rows_remaining: bool,
15
+ rows_upserted: Integer,
16
+ upserted_ids: ::Array[Turbopuffer::Models::id]
17
+ }
18
+
19
+ class WriteResult < Turbopuffer::Internal::Type::BaseModel
20
+ attr_accessor billing: Turbopuffer::WriteBilling
21
+
22
+ attr_accessor message: String
23
+
24
+ attr_accessor rows_affected: Integer
25
+
26
+ attr_accessor status: :OK
27
+
28
+ attr_reader deleted_ids: ::Array[Turbopuffer::Models::id]?
29
+
30
+ def deleted_ids=: (
31
+ ::Array[Turbopuffer::Models::id]
32
+ ) -> ::Array[Turbopuffer::Models::id]
33
+
34
+ attr_reader patched_ids: ::Array[Turbopuffer::Models::id]?
35
+
36
+ def patched_ids=: (
37
+ ::Array[Turbopuffer::Models::id]
38
+ ) -> ::Array[Turbopuffer::Models::id]
39
+
40
+ attr_reader performance: Turbopuffer::WritePerformance?
41
+
42
+ def performance=: (
43
+ Turbopuffer::WritePerformance
44
+ ) -> Turbopuffer::WritePerformance
45
+
46
+ attr_reader rows_deleted: Integer?
47
+
48
+ def rows_deleted=: (Integer) -> Integer
49
+
50
+ attr_reader rows_patched: Integer?
51
+
52
+ def rows_patched=: (Integer) -> Integer
53
+
54
+ attr_reader rows_remaining: bool?
55
+
56
+ def rows_remaining=: (bool) -> bool
57
+
58
+ attr_reader rows_upserted: Integer?
59
+
60
+ def rows_upserted=: (Integer) -> Integer
61
+
62
+ attr_reader upserted_ids: ::Array[Turbopuffer::Models::id]?
63
+
64
+ def upserted_ids=: (
65
+ ::Array[Turbopuffer::Models::id]
66
+ ) -> ::Array[Turbopuffer::Models::id]
67
+
68
+ def initialize: (
69
+ billing: Turbopuffer::WriteBilling,
70
+ message: String,
71
+ rows_affected: Integer,
72
+ ?deleted_ids: ::Array[Turbopuffer::Models::id],
73
+ ?patched_ids: ::Array[Turbopuffer::Models::id],
74
+ ?performance: Turbopuffer::WritePerformance,
75
+ ?rows_deleted: Integer,
76
+ ?rows_patched: Integer,
77
+ ?rows_remaining: bool,
78
+ ?rows_upserted: Integer,
79
+ ?upserted_ids: ::Array[Turbopuffer::Models::id],
80
+ ?status: :OK
81
+ ) -> void
82
+
83
+ def to_hash: -> {
84
+ billing: Turbopuffer::WriteBilling,
85
+ message: String,
86
+ rows_affected: Integer,
87
+ status: :OK,
88
+ deleted_ids: ::Array[Turbopuffer::Models::id],
89
+ patched_ids: ::Array[Turbopuffer::Models::id],
90
+ performance: Turbopuffer::WritePerformance,
91
+ rows_deleted: Integer,
92
+ rows_patched: Integer,
93
+ rows_remaining: bool,
94
+ rows_upserted: Integer,
95
+ upserted_ids: ::Array[Turbopuffer::Models::id]
96
+ }
97
+ end
98
+ end
99
+ end