@google-cloud/pubsub 2.18.5 → 2.19.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.
package/CHANGELOG.md CHANGED
@@ -4,6 +4,20 @@
4
4
 
5
5
  [1]: https://www.npmjs.com/package/@google-cloud/pubsub?activeTab=versions
6
6
 
7
+ ## [2.19.0](https://github.com/googleapis/nodejs-pubsub/compare/v2.18.5...v2.19.0) (2022-02-16)
8
+
9
+
10
+ ### Features
11
+
12
+ * add exactly once delivery flag ([#1487](https://github.com/googleapis/nodejs-pubsub/issues/1487)) ([330061c](https://github.com/googleapis/nodejs-pubsub/commit/330061c71e26753b86c637a525742b4f5cb3f02c))
13
+
14
+
15
+ ### Bug Fixes
16
+
17
+ * **deps:** update dependency google-gax to v2.29.5 ([#1474](https://github.com/googleapis/nodejs-pubsub/issues/1474)) ([f855db3](https://github.com/googleapis/nodejs-pubsub/commit/f855db312bcc0e9e885fa391f42b2509ceffc13f))
18
+ * **deps:** update dependency google-gax to v2.29.6 ([#1489](https://github.com/googleapis/nodejs-pubsub/issues/1489)) ([62aba28](https://github.com/googleapis/nodejs-pubsub/commit/62aba28ddb191091bc80e9a244b561cedc92f4fe))
19
+ * removing misspelled field, add correctly spelled field 🦉 Updates from OwlBot ([#1490](https://github.com/googleapis/nodejs-pubsub/issues/1490)) ([afb9cfe](https://github.com/googleapis/nodejs-pubsub/commit/afb9cfec83524c84d8e207e2b6298996df282a66))
20
+
7
21
  ### [2.18.5](https://github.com/googleapis/nodejs-pubsub/compare/v2.18.4...v2.18.5) (2022-01-21)
8
22
 
9
23
 
package/README.md CHANGED
@@ -70,14 +70,14 @@ const {PubSub} = require('@google-cloud/pubsub');
70
70
 
71
71
  async function quickstart(
72
72
  projectId = 'your-project-id', // Your Google Cloud Platform project ID
73
- topicName = 'my-topic', // Name for the new topic to create
73
+ topicNameOrId = 'my-topic', // Name for the new topic to create
74
74
  subscriptionName = 'my-sub' // Name for the new subscription to create
75
75
  ) {
76
76
  // Instantiates a client
77
77
  const pubsub = new PubSub({projectId});
78
78
 
79
79
  // Creates a new topic
80
- const [topic] = await pubsub.createTopic(topicName);
80
+ const [topic] = await pubsub.createTopic(topicNameOrId);
81
81
  console.log(`Topic ${topic.name} created.`);
82
82
 
83
83
  // Creates a subscription on that new topic
@@ -181,21 +181,21 @@ also contains samples.
181
181
  Our client libraries follow the [Node.js release schedule](https://nodejs.org/en/about/releases/).
182
182
  Libraries are compatible with all current _active_ and _maintenance_ versions of
183
183
  Node.js.
184
+ If you are using an end-of-life version of Node.js, we recommend that you update
185
+ as soon as possible to an actively supported LTS version.
184
186
 
185
- Client libraries targeting some end-of-life versions of Node.js are available, and
186
- can be installed via npm [dist-tags](https://docs.npmjs.com/cli/dist-tag).
187
- The dist-tags follow the naming convention `legacy-(version)`.
188
-
189
- _Legacy Node.js versions are supported as a best effort:_
187
+ Google's client libraries support legacy versions of Node.js runtimes on a
188
+ best-efforts basis with the following warnings:
190
189
 
191
- * Legacy versions will not be tested in continuous integration.
192
- * Some security patches may not be able to be backported.
193
- * Dependencies will not be kept up-to-date, and features will not be backported.
190
+ * Legacy versions are not tested in continuous integration.
191
+ * Some security patches and features cannot be backported.
192
+ * Dependencies cannot be kept up-to-date.
194
193
 
195
- #### Legacy tags available
196
-
197
- * `legacy-8`: install client libraries from this dist-tag for versions
198
- compatible with Node.js 8.
194
+ Client libraries targeting some end-of-life versions of Node.js are available, and
195
+ can be installed through npm [dist-tags](https://docs.npmjs.com/cli/dist-tag).
196
+ The dist-tags follow the naming convention `legacy-(version)`.
197
+ For example, `npm install @google-cloud/pubsub@legacy-8` installs client libraries
198
+ for versions compatible with Node.js 8.
199
199
 
200
200
  ## Versioning
201
201
 
@@ -752,6 +752,19 @@ message Subscription {
752
752
  // the endpoint will not be made.
753
753
  bool detached = 15;
754
754
 
755
+ // If true, Pub/Sub provides the following guarantees for the delivery of
756
+ // a message with a given value of `message_id` on this subscription:
757
+ //
758
+ // * The message sent to a subscriber is guaranteed not to be resent
759
+ // before the message's acknowledgement deadline expires.
760
+ // * An acknowledged message will not be resent to a subscriber.
761
+ //
762
+ // Note that subscribers may still receive multiple copies of a message
763
+ // when `enable_exactly_once_delivery` is true if the message was published
764
+ // multiple times by a publisher client. These copies are considered distinct
765
+ // by Pub/Sub and have distinct `message_id` values.
766
+ bool enable_exactly_once_delivery = 16;
767
+
755
768
  // Output only. Indicates the minimum duration for which a message is retained
756
769
  // after it is published to the subscription's topic. If this field is set,
757
770
  // messages published to the subscription's topic in the last
@@ -1163,8 +1176,35 @@ message StreamingPullRequest {
1163
1176
  // Response for the `StreamingPull` method. This response is used to stream
1164
1177
  // messages from the server to the client.
1165
1178
  message StreamingPullResponse {
1179
+ // Acknowledgement IDs sent in one or more previous requests to acknowledge a
1180
+ // previously received message.
1181
+ message AcknowledgeConfirmation {
1182
+ // Successfully processed acknowledgement IDs.
1183
+ repeated string ack_ids = 1 [ctype = CORD];
1184
+
1185
+ // List of acknowledgement IDs that were malformed or whose acknowledgement
1186
+ // deadline has expired.
1187
+ repeated string invalid_ack_ids = 2 [ctype = CORD];
1188
+
1189
+ // List of acknowledgement IDs that were out of order.
1190
+ repeated string unordered_ack_ids = 3 [ctype = CORD];
1191
+ }
1192
+
1193
+ // Acknowledgement IDs sent in one or more previous requests to modify the
1194
+ // deadline for a specific message.
1195
+ message ModifyAckDeadlineConfirmation {
1196
+ // Successfully processed acknowledgement IDs.
1197
+ repeated string ack_ids = 1 [ctype = CORD];
1198
+
1199
+ // List of acknowledgement IDs that were malformed or whose acknowledgement
1200
+ // deadline has expired.
1201
+ repeated string invalid_ack_ids = 2 [ctype = CORD];
1202
+ }
1203
+
1166
1204
  // Subscription properties sent as part of the response.
1167
1205
  message SubscriptionProperties {
1206
+ // True iff exactly once delivery is enabled for this subscription.
1207
+ bool exactly_once_delivery_enabled = 1;
1168
1208
  // True iff message ordering is enabled for this subscription.
1169
1209
  bool message_ordering_enabled = 2;
1170
1210
  }
@@ -1172,6 +1212,16 @@ message StreamingPullResponse {
1172
1212
  // Received Pub/Sub messages. This will not be empty.
1173
1213
  repeated ReceivedMessage received_messages = 1;
1174
1214
 
1215
+ reserved 2;
1216
+
1217
+ // This field will only be set if `enable_exactly_once_delivery` is set to
1218
+ // `true`.
1219
+ AcknowledgeConfirmation acknowledge_confirmation = 5;
1220
+
1221
+ // This field will only be set if `enable_exactly_once_delivery` is set to
1222
+ // `true`.
1223
+ ModifyAckDeadlineConfirmation modify_ack_deadline_confirmation = 3;
1224
+
1175
1225
  // Properties associated with this subscription.
1176
1226
  SubscriptionProperties subscription_properties = 4;
1177
1227
  }
@@ -173,63 +173,63 @@ export namespace google {
173
173
  namespace Publisher {
174
174
 
175
175
  /**
176
- * Callback as used by {@link google.pubsub.v1.Publisher#createTopic}.
176
+ * Callback as used by {@link google.pubsub.v1.Publisher|createTopic}.
177
177
  * @param error Error, if any
178
178
  * @param [response] Topic
179
179
  */
180
180
  type CreateTopicCallback = (error: (Error|null), response?: google.pubsub.v1.Topic) => void;
181
181
 
182
182
  /**
183
- * Callback as used by {@link google.pubsub.v1.Publisher#updateTopic}.
183
+ * Callback as used by {@link google.pubsub.v1.Publisher|updateTopic}.
184
184
  * @param error Error, if any
185
185
  * @param [response] Topic
186
186
  */
187
187
  type UpdateTopicCallback = (error: (Error|null), response?: google.pubsub.v1.Topic) => void;
188
188
 
189
189
  /**
190
- * Callback as used by {@link google.pubsub.v1.Publisher#publish}.
190
+ * Callback as used by {@link google.pubsub.v1.Publisher|publish}.
191
191
  * @param error Error, if any
192
192
  * @param [response] PublishResponse
193
193
  */
194
194
  type PublishCallback = (error: (Error|null), response?: google.pubsub.v1.PublishResponse) => void;
195
195
 
196
196
  /**
197
- * Callback as used by {@link google.pubsub.v1.Publisher#getTopic}.
197
+ * Callback as used by {@link google.pubsub.v1.Publisher|getTopic}.
198
198
  * @param error Error, if any
199
199
  * @param [response] Topic
200
200
  */
201
201
  type GetTopicCallback = (error: (Error|null), response?: google.pubsub.v1.Topic) => void;
202
202
 
203
203
  /**
204
- * Callback as used by {@link google.pubsub.v1.Publisher#listTopics}.
204
+ * Callback as used by {@link google.pubsub.v1.Publisher|listTopics}.
205
205
  * @param error Error, if any
206
206
  * @param [response] ListTopicsResponse
207
207
  */
208
208
  type ListTopicsCallback = (error: (Error|null), response?: google.pubsub.v1.ListTopicsResponse) => void;
209
209
 
210
210
  /**
211
- * Callback as used by {@link google.pubsub.v1.Publisher#listTopicSubscriptions}.
211
+ * Callback as used by {@link google.pubsub.v1.Publisher|listTopicSubscriptions}.
212
212
  * @param error Error, if any
213
213
  * @param [response] ListTopicSubscriptionsResponse
214
214
  */
215
215
  type ListTopicSubscriptionsCallback = (error: (Error|null), response?: google.pubsub.v1.ListTopicSubscriptionsResponse) => void;
216
216
 
217
217
  /**
218
- * Callback as used by {@link google.pubsub.v1.Publisher#listTopicSnapshots}.
218
+ * Callback as used by {@link google.pubsub.v1.Publisher|listTopicSnapshots}.
219
219
  * @param error Error, if any
220
220
  * @param [response] ListTopicSnapshotsResponse
221
221
  */
222
222
  type ListTopicSnapshotsCallback = (error: (Error|null), response?: google.pubsub.v1.ListTopicSnapshotsResponse) => void;
223
223
 
224
224
  /**
225
- * Callback as used by {@link google.pubsub.v1.Publisher#deleteTopic}.
225
+ * Callback as used by {@link google.pubsub.v1.Publisher|deleteTopic}.
226
226
  * @param error Error, if any
227
227
  * @param [response] Empty
228
228
  */
229
229
  type DeleteTopicCallback = (error: (Error|null), response?: google.protobuf.Empty) => void;
230
230
 
231
231
  /**
232
- * Callback as used by {@link google.pubsub.v1.Publisher#detachSubscription}.
232
+ * Callback as used by {@link google.pubsub.v1.Publisher|detachSubscription}.
233
233
  * @param error Error, if any
234
234
  * @param [response] DetachSubscriptionResponse
235
235
  */
@@ -2140,112 +2140,112 @@ export namespace google {
2140
2140
  namespace Subscriber {
2141
2141
 
2142
2142
  /**
2143
- * Callback as used by {@link google.pubsub.v1.Subscriber#createSubscription}.
2143
+ * Callback as used by {@link google.pubsub.v1.Subscriber|createSubscription}.
2144
2144
  * @param error Error, if any
2145
2145
  * @param [response] Subscription
2146
2146
  */
2147
2147
  type CreateSubscriptionCallback = (error: (Error|null), response?: google.pubsub.v1.Subscription) => void;
2148
2148
 
2149
2149
  /**
2150
- * Callback as used by {@link google.pubsub.v1.Subscriber#getSubscription}.
2150
+ * Callback as used by {@link google.pubsub.v1.Subscriber|getSubscription}.
2151
2151
  * @param error Error, if any
2152
2152
  * @param [response] Subscription
2153
2153
  */
2154
2154
  type GetSubscriptionCallback = (error: (Error|null), response?: google.pubsub.v1.Subscription) => void;
2155
2155
 
2156
2156
  /**
2157
- * Callback as used by {@link google.pubsub.v1.Subscriber#updateSubscription}.
2157
+ * Callback as used by {@link google.pubsub.v1.Subscriber|updateSubscription}.
2158
2158
  * @param error Error, if any
2159
2159
  * @param [response] Subscription
2160
2160
  */
2161
2161
  type UpdateSubscriptionCallback = (error: (Error|null), response?: google.pubsub.v1.Subscription) => void;
2162
2162
 
2163
2163
  /**
2164
- * Callback as used by {@link google.pubsub.v1.Subscriber#listSubscriptions}.
2164
+ * Callback as used by {@link google.pubsub.v1.Subscriber|listSubscriptions}.
2165
2165
  * @param error Error, if any
2166
2166
  * @param [response] ListSubscriptionsResponse
2167
2167
  */
2168
2168
  type ListSubscriptionsCallback = (error: (Error|null), response?: google.pubsub.v1.ListSubscriptionsResponse) => void;
2169
2169
 
2170
2170
  /**
2171
- * Callback as used by {@link google.pubsub.v1.Subscriber#deleteSubscription}.
2171
+ * Callback as used by {@link google.pubsub.v1.Subscriber|deleteSubscription}.
2172
2172
  * @param error Error, if any
2173
2173
  * @param [response] Empty
2174
2174
  */
2175
2175
  type DeleteSubscriptionCallback = (error: (Error|null), response?: google.protobuf.Empty) => void;
2176
2176
 
2177
2177
  /**
2178
- * Callback as used by {@link google.pubsub.v1.Subscriber#modifyAckDeadline}.
2178
+ * Callback as used by {@link google.pubsub.v1.Subscriber|modifyAckDeadline}.
2179
2179
  * @param error Error, if any
2180
2180
  * @param [response] Empty
2181
2181
  */
2182
2182
  type ModifyAckDeadlineCallback = (error: (Error|null), response?: google.protobuf.Empty) => void;
2183
2183
 
2184
2184
  /**
2185
- * Callback as used by {@link google.pubsub.v1.Subscriber#acknowledge}.
2185
+ * Callback as used by {@link google.pubsub.v1.Subscriber|acknowledge}.
2186
2186
  * @param error Error, if any
2187
2187
  * @param [response] Empty
2188
2188
  */
2189
2189
  type AcknowledgeCallback = (error: (Error|null), response?: google.protobuf.Empty) => void;
2190
2190
 
2191
2191
  /**
2192
- * Callback as used by {@link google.pubsub.v1.Subscriber#pull}.
2192
+ * Callback as used by {@link google.pubsub.v1.Subscriber|pull}.
2193
2193
  * @param error Error, if any
2194
2194
  * @param [response] PullResponse
2195
2195
  */
2196
2196
  type PullCallback = (error: (Error|null), response?: google.pubsub.v1.PullResponse) => void;
2197
2197
 
2198
2198
  /**
2199
- * Callback as used by {@link google.pubsub.v1.Subscriber#streamingPull}.
2199
+ * Callback as used by {@link google.pubsub.v1.Subscriber|streamingPull}.
2200
2200
  * @param error Error, if any
2201
2201
  * @param [response] StreamingPullResponse
2202
2202
  */
2203
2203
  type StreamingPullCallback = (error: (Error|null), response?: google.pubsub.v1.StreamingPullResponse) => void;
2204
2204
 
2205
2205
  /**
2206
- * Callback as used by {@link google.pubsub.v1.Subscriber#modifyPushConfig}.
2206
+ * Callback as used by {@link google.pubsub.v1.Subscriber|modifyPushConfig}.
2207
2207
  * @param error Error, if any
2208
2208
  * @param [response] Empty
2209
2209
  */
2210
2210
  type ModifyPushConfigCallback = (error: (Error|null), response?: google.protobuf.Empty) => void;
2211
2211
 
2212
2212
  /**
2213
- * Callback as used by {@link google.pubsub.v1.Subscriber#getSnapshot}.
2213
+ * Callback as used by {@link google.pubsub.v1.Subscriber|getSnapshot}.
2214
2214
  * @param error Error, if any
2215
2215
  * @param [response] Snapshot
2216
2216
  */
2217
2217
  type GetSnapshotCallback = (error: (Error|null), response?: google.pubsub.v1.Snapshot) => void;
2218
2218
 
2219
2219
  /**
2220
- * Callback as used by {@link google.pubsub.v1.Subscriber#listSnapshots}.
2220
+ * Callback as used by {@link google.pubsub.v1.Subscriber|listSnapshots}.
2221
2221
  * @param error Error, if any
2222
2222
  * @param [response] ListSnapshotsResponse
2223
2223
  */
2224
2224
  type ListSnapshotsCallback = (error: (Error|null), response?: google.pubsub.v1.ListSnapshotsResponse) => void;
2225
2225
 
2226
2226
  /**
2227
- * Callback as used by {@link google.pubsub.v1.Subscriber#createSnapshot}.
2227
+ * Callback as used by {@link google.pubsub.v1.Subscriber|createSnapshot}.
2228
2228
  * @param error Error, if any
2229
2229
  * @param [response] Snapshot
2230
2230
  */
2231
2231
  type CreateSnapshotCallback = (error: (Error|null), response?: google.pubsub.v1.Snapshot) => void;
2232
2232
 
2233
2233
  /**
2234
- * Callback as used by {@link google.pubsub.v1.Subscriber#updateSnapshot}.
2234
+ * Callback as used by {@link google.pubsub.v1.Subscriber|updateSnapshot}.
2235
2235
  * @param error Error, if any
2236
2236
  * @param [response] Snapshot
2237
2237
  */
2238
2238
  type UpdateSnapshotCallback = (error: (Error|null), response?: google.pubsub.v1.Snapshot) => void;
2239
2239
 
2240
2240
  /**
2241
- * Callback as used by {@link google.pubsub.v1.Subscriber#deleteSnapshot}.
2241
+ * Callback as used by {@link google.pubsub.v1.Subscriber|deleteSnapshot}.
2242
2242
  * @param error Error, if any
2243
2243
  * @param [response] Empty
2244
2244
  */
2245
2245
  type DeleteSnapshotCallback = (error: (Error|null), response?: google.protobuf.Empty) => void;
2246
2246
 
2247
2247
  /**
2248
- * Callback as used by {@link google.pubsub.v1.Subscriber#seek}.
2248
+ * Callback as used by {@link google.pubsub.v1.Subscriber|seek}.
2249
2249
  * @param error Error, if any
2250
2250
  * @param [response] SeekResponse
2251
2251
  */
@@ -2294,6 +2294,9 @@ export namespace google {
2294
2294
  /** Subscription detached */
2295
2295
  detached?: (boolean|null);
2296
2296
 
2297
+ /** Subscription enableExactlyOnceDelivery */
2298
+ enableExactlyOnceDelivery?: (boolean|null);
2299
+
2297
2300
  /** Subscription topicMessageRetentionDuration */
2298
2301
  topicMessageRetentionDuration?: (google.protobuf.IDuration|null);
2299
2302
  }
@@ -2346,6 +2349,9 @@ export namespace google {
2346
2349
  /** Subscription detached. */
2347
2350
  public detached: boolean;
2348
2351
 
2352
+ /** Subscription enableExactlyOnceDelivery. */
2353
+ public enableExactlyOnceDelivery: boolean;
2354
+
2349
2355
  /** Subscription topicMessageRetentionDuration. */
2350
2356
  public topicMessageRetentionDuration?: (google.protobuf.IDuration|null);
2351
2357
 
@@ -4106,6 +4112,12 @@ export namespace google {
4106
4112
  /** StreamingPullResponse receivedMessages */
4107
4113
  receivedMessages?: (google.pubsub.v1.IReceivedMessage[]|null);
4108
4114
 
4115
+ /** StreamingPullResponse acknowledgeConfirmation */
4116
+ acknowledgeConfirmation?: (google.pubsub.v1.StreamingPullResponse.IAcknowledgeConfirmation|null);
4117
+
4118
+ /** StreamingPullResponse modifyAckDeadlineConfirmation */
4119
+ modifyAckDeadlineConfirmation?: (google.pubsub.v1.StreamingPullResponse.IModifyAckDeadlineConfirmation|null);
4120
+
4109
4121
  /** StreamingPullResponse subscriptionProperties */
4110
4122
  subscriptionProperties?: (google.pubsub.v1.StreamingPullResponse.ISubscriptionProperties|null);
4111
4123
  }
@@ -4122,6 +4134,12 @@ export namespace google {
4122
4134
  /** StreamingPullResponse receivedMessages. */
4123
4135
  public receivedMessages: google.pubsub.v1.IReceivedMessage[];
4124
4136
 
4137
+ /** StreamingPullResponse acknowledgeConfirmation. */
4138
+ public acknowledgeConfirmation?: (google.pubsub.v1.StreamingPullResponse.IAcknowledgeConfirmation|null);
4139
+
4140
+ /** StreamingPullResponse modifyAckDeadlineConfirmation. */
4141
+ public modifyAckDeadlineConfirmation?: (google.pubsub.v1.StreamingPullResponse.IModifyAckDeadlineConfirmation|null);
4142
+
4125
4143
  /** StreamingPullResponse subscriptionProperties. */
4126
4144
  public subscriptionProperties?: (google.pubsub.v1.StreamingPullResponse.ISubscriptionProperties|null);
4127
4145
 
@@ -4198,9 +4216,210 @@ export namespace google {
4198
4216
 
4199
4217
  namespace StreamingPullResponse {
4200
4218
 
4219
+ /** Properties of an AcknowledgeConfirmation. */
4220
+ interface IAcknowledgeConfirmation {
4221
+
4222
+ /** AcknowledgeConfirmation ackIds */
4223
+ ackIds?: (string[]|null);
4224
+
4225
+ /** AcknowledgeConfirmation invalidAckIds */
4226
+ invalidAckIds?: (string[]|null);
4227
+
4228
+ /** AcknowledgeConfirmation unorderedAckIds */
4229
+ unorderedAckIds?: (string[]|null);
4230
+ }
4231
+
4232
+ /** Represents an AcknowledgeConfirmation. */
4233
+ class AcknowledgeConfirmation implements IAcknowledgeConfirmation {
4234
+
4235
+ /**
4236
+ * Constructs a new AcknowledgeConfirmation.
4237
+ * @param [properties] Properties to set
4238
+ */
4239
+ constructor(properties?: google.pubsub.v1.StreamingPullResponse.IAcknowledgeConfirmation);
4240
+
4241
+ /** AcknowledgeConfirmation ackIds. */
4242
+ public ackIds: string[];
4243
+
4244
+ /** AcknowledgeConfirmation invalidAckIds. */
4245
+ public invalidAckIds: string[];
4246
+
4247
+ /** AcknowledgeConfirmation unorderedAckIds. */
4248
+ public unorderedAckIds: string[];
4249
+
4250
+ /**
4251
+ * Creates a new AcknowledgeConfirmation instance using the specified properties.
4252
+ * @param [properties] Properties to set
4253
+ * @returns AcknowledgeConfirmation instance
4254
+ */
4255
+ public static create(properties?: google.pubsub.v1.StreamingPullResponse.IAcknowledgeConfirmation): google.pubsub.v1.StreamingPullResponse.AcknowledgeConfirmation;
4256
+
4257
+ /**
4258
+ * Encodes the specified AcknowledgeConfirmation message. Does not implicitly {@link google.pubsub.v1.StreamingPullResponse.AcknowledgeConfirmation.verify|verify} messages.
4259
+ * @param message AcknowledgeConfirmation message or plain object to encode
4260
+ * @param [writer] Writer to encode to
4261
+ * @returns Writer
4262
+ */
4263
+ public static encode(message: google.pubsub.v1.StreamingPullResponse.IAcknowledgeConfirmation, writer?: $protobuf.Writer): $protobuf.Writer;
4264
+
4265
+ /**
4266
+ * Encodes the specified AcknowledgeConfirmation message, length delimited. Does not implicitly {@link google.pubsub.v1.StreamingPullResponse.AcknowledgeConfirmation.verify|verify} messages.
4267
+ * @param message AcknowledgeConfirmation message or plain object to encode
4268
+ * @param [writer] Writer to encode to
4269
+ * @returns Writer
4270
+ */
4271
+ public static encodeDelimited(message: google.pubsub.v1.StreamingPullResponse.IAcknowledgeConfirmation, writer?: $protobuf.Writer): $protobuf.Writer;
4272
+
4273
+ /**
4274
+ * Decodes an AcknowledgeConfirmation message from the specified reader or buffer.
4275
+ * @param reader Reader or buffer to decode from
4276
+ * @param [length] Message length if known beforehand
4277
+ * @returns AcknowledgeConfirmation
4278
+ * @throws {Error} If the payload is not a reader or valid buffer
4279
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
4280
+ */
4281
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.pubsub.v1.StreamingPullResponse.AcknowledgeConfirmation;
4282
+
4283
+ /**
4284
+ * Decodes an AcknowledgeConfirmation message from the specified reader or buffer, length delimited.
4285
+ * @param reader Reader or buffer to decode from
4286
+ * @returns AcknowledgeConfirmation
4287
+ * @throws {Error} If the payload is not a reader or valid buffer
4288
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
4289
+ */
4290
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.pubsub.v1.StreamingPullResponse.AcknowledgeConfirmation;
4291
+
4292
+ /**
4293
+ * Verifies an AcknowledgeConfirmation message.
4294
+ * @param message Plain object to verify
4295
+ * @returns `null` if valid, otherwise the reason why it is not
4296
+ */
4297
+ public static verify(message: { [k: string]: any }): (string|null);
4298
+
4299
+ /**
4300
+ * Creates an AcknowledgeConfirmation message from a plain object. Also converts values to their respective internal types.
4301
+ * @param object Plain object
4302
+ * @returns AcknowledgeConfirmation
4303
+ */
4304
+ public static fromObject(object: { [k: string]: any }): google.pubsub.v1.StreamingPullResponse.AcknowledgeConfirmation;
4305
+
4306
+ /**
4307
+ * Creates a plain object from an AcknowledgeConfirmation message. Also converts values to other types if specified.
4308
+ * @param message AcknowledgeConfirmation
4309
+ * @param [options] Conversion options
4310
+ * @returns Plain object
4311
+ */
4312
+ public static toObject(message: google.pubsub.v1.StreamingPullResponse.AcknowledgeConfirmation, options?: $protobuf.IConversionOptions): { [k: string]: any };
4313
+
4314
+ /**
4315
+ * Converts this AcknowledgeConfirmation to JSON.
4316
+ * @returns JSON object
4317
+ */
4318
+ public toJSON(): { [k: string]: any };
4319
+ }
4320
+
4321
+ /** Properties of a ModifyAckDeadlineConfirmation. */
4322
+ interface IModifyAckDeadlineConfirmation {
4323
+
4324
+ /** ModifyAckDeadlineConfirmation ackIds */
4325
+ ackIds?: (string[]|null);
4326
+
4327
+ /** ModifyAckDeadlineConfirmation invalidAckIds */
4328
+ invalidAckIds?: (string[]|null);
4329
+ }
4330
+
4331
+ /** Represents a ModifyAckDeadlineConfirmation. */
4332
+ class ModifyAckDeadlineConfirmation implements IModifyAckDeadlineConfirmation {
4333
+
4334
+ /**
4335
+ * Constructs a new ModifyAckDeadlineConfirmation.
4336
+ * @param [properties] Properties to set
4337
+ */
4338
+ constructor(properties?: google.pubsub.v1.StreamingPullResponse.IModifyAckDeadlineConfirmation);
4339
+
4340
+ /** ModifyAckDeadlineConfirmation ackIds. */
4341
+ public ackIds: string[];
4342
+
4343
+ /** ModifyAckDeadlineConfirmation invalidAckIds. */
4344
+ public invalidAckIds: string[];
4345
+
4346
+ /**
4347
+ * Creates a new ModifyAckDeadlineConfirmation instance using the specified properties.
4348
+ * @param [properties] Properties to set
4349
+ * @returns ModifyAckDeadlineConfirmation instance
4350
+ */
4351
+ public static create(properties?: google.pubsub.v1.StreamingPullResponse.IModifyAckDeadlineConfirmation): google.pubsub.v1.StreamingPullResponse.ModifyAckDeadlineConfirmation;
4352
+
4353
+ /**
4354
+ * Encodes the specified ModifyAckDeadlineConfirmation message. Does not implicitly {@link google.pubsub.v1.StreamingPullResponse.ModifyAckDeadlineConfirmation.verify|verify} messages.
4355
+ * @param message ModifyAckDeadlineConfirmation message or plain object to encode
4356
+ * @param [writer] Writer to encode to
4357
+ * @returns Writer
4358
+ */
4359
+ public static encode(message: google.pubsub.v1.StreamingPullResponse.IModifyAckDeadlineConfirmation, writer?: $protobuf.Writer): $protobuf.Writer;
4360
+
4361
+ /**
4362
+ * Encodes the specified ModifyAckDeadlineConfirmation message, length delimited. Does not implicitly {@link google.pubsub.v1.StreamingPullResponse.ModifyAckDeadlineConfirmation.verify|verify} messages.
4363
+ * @param message ModifyAckDeadlineConfirmation message or plain object to encode
4364
+ * @param [writer] Writer to encode to
4365
+ * @returns Writer
4366
+ */
4367
+ public static encodeDelimited(message: google.pubsub.v1.StreamingPullResponse.IModifyAckDeadlineConfirmation, writer?: $protobuf.Writer): $protobuf.Writer;
4368
+
4369
+ /**
4370
+ * Decodes a ModifyAckDeadlineConfirmation message from the specified reader or buffer.
4371
+ * @param reader Reader or buffer to decode from
4372
+ * @param [length] Message length if known beforehand
4373
+ * @returns ModifyAckDeadlineConfirmation
4374
+ * @throws {Error} If the payload is not a reader or valid buffer
4375
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
4376
+ */
4377
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.pubsub.v1.StreamingPullResponse.ModifyAckDeadlineConfirmation;
4378
+
4379
+ /**
4380
+ * Decodes a ModifyAckDeadlineConfirmation message from the specified reader or buffer, length delimited.
4381
+ * @param reader Reader or buffer to decode from
4382
+ * @returns ModifyAckDeadlineConfirmation
4383
+ * @throws {Error} If the payload is not a reader or valid buffer
4384
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
4385
+ */
4386
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.pubsub.v1.StreamingPullResponse.ModifyAckDeadlineConfirmation;
4387
+
4388
+ /**
4389
+ * Verifies a ModifyAckDeadlineConfirmation message.
4390
+ * @param message Plain object to verify
4391
+ * @returns `null` if valid, otherwise the reason why it is not
4392
+ */
4393
+ public static verify(message: { [k: string]: any }): (string|null);
4394
+
4395
+ /**
4396
+ * Creates a ModifyAckDeadlineConfirmation message from a plain object. Also converts values to their respective internal types.
4397
+ * @param object Plain object
4398
+ * @returns ModifyAckDeadlineConfirmation
4399
+ */
4400
+ public static fromObject(object: { [k: string]: any }): google.pubsub.v1.StreamingPullResponse.ModifyAckDeadlineConfirmation;
4401
+
4402
+ /**
4403
+ * Creates a plain object from a ModifyAckDeadlineConfirmation message. Also converts values to other types if specified.
4404
+ * @param message ModifyAckDeadlineConfirmation
4405
+ * @param [options] Conversion options
4406
+ * @returns Plain object
4407
+ */
4408
+ public static toObject(message: google.pubsub.v1.StreamingPullResponse.ModifyAckDeadlineConfirmation, options?: $protobuf.IConversionOptions): { [k: string]: any };
4409
+
4410
+ /**
4411
+ * Converts this ModifyAckDeadlineConfirmation to JSON.
4412
+ * @returns JSON object
4413
+ */
4414
+ public toJSON(): { [k: string]: any };
4415
+ }
4416
+
4201
4417
  /** Properties of a SubscriptionProperties. */
4202
4418
  interface ISubscriptionProperties {
4203
4419
 
4420
+ /** SubscriptionProperties exactlyOnceDeliveryEnabled */
4421
+ exactlyOnceDeliveryEnabled?: (boolean|null);
4422
+
4204
4423
  /** SubscriptionProperties messageOrderingEnabled */
4205
4424
  messageOrderingEnabled?: (boolean|null);
4206
4425
  }
@@ -4214,6 +4433,9 @@ export namespace google {
4214
4433
  */
4215
4434
  constructor(properties?: google.pubsub.v1.StreamingPullResponse.ISubscriptionProperties);
4216
4435
 
4436
+ /** SubscriptionProperties exactlyOnceDeliveryEnabled. */
4437
+ public exactlyOnceDeliveryEnabled: boolean;
4438
+
4217
4439
  /** SubscriptionProperties messageOrderingEnabled. */
4218
4440
  public messageOrderingEnabled: boolean;
4219
4441
 
@@ -5270,42 +5492,42 @@ export namespace google {
5270
5492
  namespace SchemaService {
5271
5493
 
5272
5494
  /**
5273
- * Callback as used by {@link google.pubsub.v1.SchemaService#createSchema}.
5495
+ * Callback as used by {@link google.pubsub.v1.SchemaService|createSchema}.
5274
5496
  * @param error Error, if any
5275
5497
  * @param [response] Schema
5276
5498
  */
5277
5499
  type CreateSchemaCallback = (error: (Error|null), response?: google.pubsub.v1.Schema) => void;
5278
5500
 
5279
5501
  /**
5280
- * Callback as used by {@link google.pubsub.v1.SchemaService#getSchema}.
5502
+ * Callback as used by {@link google.pubsub.v1.SchemaService|getSchema}.
5281
5503
  * @param error Error, if any
5282
5504
  * @param [response] Schema
5283
5505
  */
5284
5506
  type GetSchemaCallback = (error: (Error|null), response?: google.pubsub.v1.Schema) => void;
5285
5507
 
5286
5508
  /**
5287
- * Callback as used by {@link google.pubsub.v1.SchemaService#listSchemas}.
5509
+ * Callback as used by {@link google.pubsub.v1.SchemaService|listSchemas}.
5288
5510
  * @param error Error, if any
5289
5511
  * @param [response] ListSchemasResponse
5290
5512
  */
5291
5513
  type ListSchemasCallback = (error: (Error|null), response?: google.pubsub.v1.ListSchemasResponse) => void;
5292
5514
 
5293
5515
  /**
5294
- * Callback as used by {@link google.pubsub.v1.SchemaService#deleteSchema}.
5516
+ * Callback as used by {@link google.pubsub.v1.SchemaService|deleteSchema}.
5295
5517
  * @param error Error, if any
5296
5518
  * @param [response] Empty
5297
5519
  */
5298
5520
  type DeleteSchemaCallback = (error: (Error|null), response?: google.protobuf.Empty) => void;
5299
5521
 
5300
5522
  /**
5301
- * Callback as used by {@link google.pubsub.v1.SchemaService#validateSchema}.
5523
+ * Callback as used by {@link google.pubsub.v1.SchemaService|validateSchema}.
5302
5524
  * @param error Error, if any
5303
5525
  * @param [response] ValidateSchemaResponse
5304
5526
  */
5305
5527
  type ValidateSchemaCallback = (error: (Error|null), response?: google.pubsub.v1.ValidateSchemaResponse) => void;
5306
5528
 
5307
5529
  /**
5308
- * Callback as used by {@link google.pubsub.v1.SchemaService#validateMessage}.
5530
+ * Callback as used by {@link google.pubsub.v1.SchemaService|validateMessage}.
5309
5531
  * @param error Error, if any
5310
5532
  * @param [response] ValidateMessageResponse
5311
5533
  */