UNPKG

@enfonica/messaging

Version:

Enfonica Messaging SDK for Node.js

1,051 lines (853 loc) 258 kB
// Copyright 2025 Google LLC // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. // You may obtain a copy of the License at // // http://www.apache.org/licenses/LICENSE-2.0 // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. import * as Long from "long"; import {protobuf as $protobuf} from "google-gax"; /** Namespace enfonica. */ export namespace enfonica { /** Namespace messaging. */ namespace messaging { /** Namespace v1. */ namespace v1 { /** Represents a Messages */ class Messages extends $protobuf.rpc.Service { /** * Constructs a new Messages service. * @param rpcImpl RPC implementation * @param [requestDelimited=false] Whether requests are length-delimited * @param [responseDelimited=false] Whether responses are length-delimited */ constructor(rpcImpl: $protobuf.RPCImpl, requestDelimited?: boolean, responseDelimited?: boolean); /** * Creates new Messages service using the specified rpc implementation. * @param rpcImpl RPC implementation * @param [requestDelimited=false] Whether requests are length-delimited * @param [responseDelimited=false] Whether responses are length-delimited * @returns RPC service. Useful where requests and/or responses are streamed. */ public static create(rpcImpl: $protobuf.RPCImpl, requestDelimited?: boolean, responseDelimited?: boolean): Messages; /** * Calls CreateMessage. * @param request CreateMessageRequest message or plain object * @param callback Node-style callback called with the error, if any, and Message */ public createMessage(request: enfonica.messaging.v1.ICreateMessageRequest, callback: enfonica.messaging.v1.Messages.CreateMessageCallback): void; /** * Calls CreateMessage. * @param request CreateMessageRequest message or plain object * @returns Promise */ public createMessage(request: enfonica.messaging.v1.ICreateMessageRequest): Promise<enfonica.messaging.v1.Message>; /** * Calls GetMessage. * @param request GetMessageRequest message or plain object * @param callback Node-style callback called with the error, if any, and Message */ public getMessage(request: enfonica.messaging.v1.IGetMessageRequest, callback: enfonica.messaging.v1.Messages.GetMessageCallback): void; /** * Calls GetMessage. * @param request GetMessageRequest message or plain object * @returns Promise */ public getMessage(request: enfonica.messaging.v1.IGetMessageRequest): Promise<enfonica.messaging.v1.Message>; /** * Calls ListMessages. * @param request ListMessagesRequest message or plain object * @param callback Node-style callback called with the error, if any, and ListMessagesResponse */ public listMessages(request: enfonica.messaging.v1.IListMessagesRequest, callback: enfonica.messaging.v1.Messages.ListMessagesCallback): void; /** * Calls ListMessages. * @param request ListMessagesRequest message or plain object * @returns Promise */ public listMessages(request: enfonica.messaging.v1.IListMessagesRequest): Promise<enfonica.messaging.v1.ListMessagesResponse>; } namespace Messages { /** * Callback as used by {@link enfonica.messaging.v1.Messages|createMessage}. * @param error Error, if any * @param [response] Message */ type CreateMessageCallback = (error: (Error|null), response?: enfonica.messaging.v1.Message) => void; /** * Callback as used by {@link enfonica.messaging.v1.Messages|getMessage}. * @param error Error, if any * @param [response] Message */ type GetMessageCallback = (error: (Error|null), response?: enfonica.messaging.v1.Message) => void; /** * Callback as used by {@link enfonica.messaging.v1.Messages|listMessages}. * @param error Error, if any * @param [response] ListMessagesResponse */ type ListMessagesCallback = (error: (Error|null), response?: enfonica.messaging.v1.ListMessagesResponse) => void; } /** Properties of a Message. */ interface IMessage { /** Message name */ name?: (string|null); /** Message to */ to?: (string|null); /** Message from */ from?: (string|null); /** Message body */ body?: (string|null); /** Message statusUpdateUrl */ statusUpdateUrl?: (string|null); /** Message replyUrl */ replyUrl?: (string|null); /** Message validityPeriodSeconds */ validityPeriodSeconds?: (number|null); /** Message smartEncoding */ smartEncoding?: (boolean|null); /** Message labels */ labels?: ({ [k: string]: string }|null); /** Message classification */ classification?: (enfonica.messaging.v1.Message.MessageClassification|keyof typeof enfonica.messaging.v1.Message.MessageClassification|null); /** Message unsubscribeContentBehavior */ unsubscribeContentBehavior?: (enfonica.messaging.v1.Message.UnsubscribeContentBehavior|keyof typeof enfonica.messaging.v1.Message.UnsubscribeContentBehavior|null); /** Message direction */ direction?: (enfonica.messaging.v1.Message.Direction|keyof typeof enfonica.messaging.v1.Message.Direction|null); /** Message errorCode */ errorCode?: (string|null); /** Message errorMessage */ errorMessage?: (string|null); /** Message segmentCount */ segmentCount?: (number|null); /** Message price */ price?: (google.type.IMoney|null); /** Message status */ status?: (enfonica.messaging.v1.Message.Status|keyof typeof enfonica.messaging.v1.Message.Status|null); /** Message createIdentity */ createIdentity?: (string|null); /** Message createTime */ createTime?: (google.protobuf.ITimestamp|null); /** Message sendTime */ sendTime?: (google.protobuf.ITimestamp|null); /** Message deliverTime */ deliverTime?: (google.protobuf.ITimestamp|null); /** Message encoding */ encoding?: (enfonica.messaging.v1.Message.MessageEncoding|keyof typeof enfonica.messaging.v1.Message.MessageEncoding|null); } /** Represents a Message. */ class Message implements IMessage { /** * Constructs a new Message. * @param [properties] Properties to set */ constructor(properties?: enfonica.messaging.v1.IMessage); /** Message name. */ public name: string; /** Message to. */ public to: string; /** Message from. */ public from: string; /** Message body. */ public body: string; /** Message statusUpdateUrl. */ public statusUpdateUrl: string; /** Message replyUrl. */ public replyUrl: string; /** Message validityPeriodSeconds. */ public validityPeriodSeconds: number; /** Message smartEncoding. */ public smartEncoding: boolean; /** Message labels. */ public labels: { [k: string]: string }; /** Message classification. */ public classification: (enfonica.messaging.v1.Message.MessageClassification|keyof typeof enfonica.messaging.v1.Message.MessageClassification); /** Message unsubscribeContentBehavior. */ public unsubscribeContentBehavior: (enfonica.messaging.v1.Message.UnsubscribeContentBehavior|keyof typeof enfonica.messaging.v1.Message.UnsubscribeContentBehavior); /** Message direction. */ public direction: (enfonica.messaging.v1.Message.Direction|keyof typeof enfonica.messaging.v1.Message.Direction); /** Message errorCode. */ public errorCode: string; /** Message errorMessage. */ public errorMessage: string; /** Message segmentCount. */ public segmentCount: number; /** Message price. */ public price?: (google.type.IMoney|null); /** Message status. */ public status: (enfonica.messaging.v1.Message.Status|keyof typeof enfonica.messaging.v1.Message.Status); /** Message createIdentity. */ public createIdentity: string; /** Message createTime. */ public createTime?: (google.protobuf.ITimestamp|null); /** Message sendTime. */ public sendTime?: (google.protobuf.ITimestamp|null); /** Message deliverTime. */ public deliverTime?: (google.protobuf.ITimestamp|null); /** Message encoding. */ public encoding: (enfonica.messaging.v1.Message.MessageEncoding|keyof typeof enfonica.messaging.v1.Message.MessageEncoding); /** * Creates a new Message instance using the specified properties. * @param [properties] Properties to set * @returns Message instance */ public static create(properties?: enfonica.messaging.v1.IMessage): enfonica.messaging.v1.Message; /** * Encodes the specified Message message. Does not implicitly {@link enfonica.messaging.v1.Message.verify|verify} messages. * @param message Message message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ public static encode(message: enfonica.messaging.v1.IMessage, writer?: $protobuf.Writer): $protobuf.Writer; /** * Encodes the specified Message message, length delimited. Does not implicitly {@link enfonica.messaging.v1.Message.verify|verify} messages. * @param message Message message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ public static encodeDelimited(message: enfonica.messaging.v1.IMessage, writer?: $protobuf.Writer): $protobuf.Writer; /** * Decodes a Message message from the specified reader or buffer. * @param reader Reader or buffer to decode from * @param [length] Message length if known beforehand * @returns Message * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): enfonica.messaging.v1.Message; /** * Decodes a Message message from the specified reader or buffer, length delimited. * @param reader Reader or buffer to decode from * @returns Message * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): enfonica.messaging.v1.Message; /** * Verifies a Message message. * @param message Plain object to verify * @returns `null` if valid, otherwise the reason why it is not */ public static verify(message: { [k: string]: any }): (string|null); /** * Creates a Message message from a plain object. Also converts values to their respective internal types. * @param object Plain object * @returns Message */ public static fromObject(object: { [k: string]: any }): enfonica.messaging.v1.Message; /** * Creates a plain object from a Message message. Also converts values to other types if specified. * @param message Message * @param [options] Conversion options * @returns Plain object */ public static toObject(message: enfonica.messaging.v1.Message, options?: $protobuf.IConversionOptions): { [k: string]: any }; /** * Converts this Message to JSON. * @returns JSON object */ public toJSON(): { [k: string]: any }; } namespace Message { /** Status enum. */ enum Status { STATUS_UNSPECIFIED = 0, QUEUED = 1, SENDING = 2, SENT = 3, FAILED = 4, DELIVERED = 5, UNDELIVERED = 6, RECEIVED = 7 } /** Direction enum. */ enum Direction { DIRECTION_UNSPECIFIED = 0, OUTGOING = 1, INCOMING = 2 } /** MessageClassification enum. */ enum MessageClassification { MESSAGE_CLASSIFICATION_UNSPECIFIED = 0, UNCLASSIFIED = 1, TRANSACTIONAL = 2, MARKETING = 3 } /** UnsubscribeContentBehavior enum. */ enum UnsubscribeContentBehavior { UNSUBSCRIBE_CONTENT_BEHAVIOR_UNSPECIFIED = 0, NONE = 1, APPEND_URL = 2 } /** MessageEncoding enum. */ enum MessageEncoding { MESSAGE_ENCODING_UNSPECIFIED = 0, GSM7 = 1, UCS2 = 2 } } /** Properties of a CreateMessageRequest. */ interface ICreateMessageRequest { /** CreateMessageRequest parent */ parent?: (string|null); /** CreateMessageRequest message */ message?: (enfonica.messaging.v1.IMessage|null); } /** Represents a CreateMessageRequest. */ class CreateMessageRequest implements ICreateMessageRequest { /** * Constructs a new CreateMessageRequest. * @param [properties] Properties to set */ constructor(properties?: enfonica.messaging.v1.ICreateMessageRequest); /** CreateMessageRequest parent. */ public parent: string; /** CreateMessageRequest message. */ public message?: (enfonica.messaging.v1.IMessage|null); /** * Creates a new CreateMessageRequest instance using the specified properties. * @param [properties] Properties to set * @returns CreateMessageRequest instance */ public static create(properties?: enfonica.messaging.v1.ICreateMessageRequest): enfonica.messaging.v1.CreateMessageRequest; /** * Encodes the specified CreateMessageRequest message. Does not implicitly {@link enfonica.messaging.v1.CreateMessageRequest.verify|verify} messages. * @param message CreateMessageRequest message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ public static encode(message: enfonica.messaging.v1.ICreateMessageRequest, writer?: $protobuf.Writer): $protobuf.Writer; /** * Encodes the specified CreateMessageRequest message, length delimited. Does not implicitly {@link enfonica.messaging.v1.CreateMessageRequest.verify|verify} messages. * @param message CreateMessageRequest message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ public static encodeDelimited(message: enfonica.messaging.v1.ICreateMessageRequest, writer?: $protobuf.Writer): $protobuf.Writer; /** * Decodes a CreateMessageRequest message from the specified reader or buffer. * @param reader Reader or buffer to decode from * @param [length] Message length if known beforehand * @returns CreateMessageRequest * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): enfonica.messaging.v1.CreateMessageRequest; /** * Decodes a CreateMessageRequest message from the specified reader or buffer, length delimited. * @param reader Reader or buffer to decode from * @returns CreateMessageRequest * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): enfonica.messaging.v1.CreateMessageRequest; /** * Verifies a CreateMessageRequest message. * @param message Plain object to verify * @returns `null` if valid, otherwise the reason why it is not */ public static verify(message: { [k: string]: any }): (string|null); /** * Creates a CreateMessageRequest message from a plain object. Also converts values to their respective internal types. * @param object Plain object * @returns CreateMessageRequest */ public static fromObject(object: { [k: string]: any }): enfonica.messaging.v1.CreateMessageRequest; /** * Creates a plain object from a CreateMessageRequest message. Also converts values to other types if specified. * @param message CreateMessageRequest * @param [options] Conversion options * @returns Plain object */ public static toObject(message: enfonica.messaging.v1.CreateMessageRequest, options?: $protobuf.IConversionOptions): { [k: string]: any }; /** * Converts this CreateMessageRequest to JSON. * @returns JSON object */ public toJSON(): { [k: string]: any }; } /** Properties of a GetMessageRequest. */ interface IGetMessageRequest { /** GetMessageRequest name */ name?: (string|null); } /** Represents a GetMessageRequest. */ class GetMessageRequest implements IGetMessageRequest { /** * Constructs a new GetMessageRequest. * @param [properties] Properties to set */ constructor(properties?: enfonica.messaging.v1.IGetMessageRequest); /** GetMessageRequest name. */ public name: string; /** * Creates a new GetMessageRequest instance using the specified properties. * @param [properties] Properties to set * @returns GetMessageRequest instance */ public static create(properties?: enfonica.messaging.v1.IGetMessageRequest): enfonica.messaging.v1.GetMessageRequest; /** * Encodes the specified GetMessageRequest message. Does not implicitly {@link enfonica.messaging.v1.GetMessageRequest.verify|verify} messages. * @param message GetMessageRequest message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ public static encode(message: enfonica.messaging.v1.IGetMessageRequest, writer?: $protobuf.Writer): $protobuf.Writer; /** * Encodes the specified GetMessageRequest message, length delimited. Does not implicitly {@link enfonica.messaging.v1.GetMessageRequest.verify|verify} messages. * @param message GetMessageRequest message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ public static encodeDelimited(message: enfonica.messaging.v1.IGetMessageRequest, writer?: $protobuf.Writer): $protobuf.Writer; /** * Decodes a GetMessageRequest message from the specified reader or buffer. * @param reader Reader or buffer to decode from * @param [length] Message length if known beforehand * @returns GetMessageRequest * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): enfonica.messaging.v1.GetMessageRequest; /** * Decodes a GetMessageRequest message from the specified reader or buffer, length delimited. * @param reader Reader or buffer to decode from * @returns GetMessageRequest * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): enfonica.messaging.v1.GetMessageRequest; /** * Verifies a GetMessageRequest message. * @param message Plain object to verify * @returns `null` if valid, otherwise the reason why it is not */ public static verify(message: { [k: string]: any }): (string|null); /** * Creates a GetMessageRequest message from a plain object. Also converts values to their respective internal types. * @param object Plain object * @returns GetMessageRequest */ public static fromObject(object: { [k: string]: any }): enfonica.messaging.v1.GetMessageRequest; /** * Creates a plain object from a GetMessageRequest message. Also converts values to other types if specified. * @param message GetMessageRequest * @param [options] Conversion options * @returns Plain object */ public static toObject(message: enfonica.messaging.v1.GetMessageRequest, options?: $protobuf.IConversionOptions): { [k: string]: any }; /** * Converts this GetMessageRequest to JSON. * @returns JSON object */ public toJSON(): { [k: string]: any }; } /** Properties of a ListMessagesRequest. */ interface IListMessagesRequest { /** ListMessagesRequest parent */ parent?: (string|null); /** ListMessagesRequest pageSize */ pageSize?: (number|null); /** ListMessagesRequest pageToken */ pageToken?: (string|null); /** ListMessagesRequest startTime */ startTime?: (google.protobuf.ITimestamp|null); /** ListMessagesRequest endTime */ endTime?: (google.protobuf.ITimestamp|null); /** ListMessagesRequest filter */ filter?: (string|null); } /** Represents a ListMessagesRequest. */ class ListMessagesRequest implements IListMessagesRequest { /** * Constructs a new ListMessagesRequest. * @param [properties] Properties to set */ constructor(properties?: enfonica.messaging.v1.IListMessagesRequest); /** ListMessagesRequest parent. */ public parent: string; /** ListMessagesRequest pageSize. */ public pageSize: number; /** ListMessagesRequest pageToken. */ public pageToken: string; /** ListMessagesRequest startTime. */ public startTime?: (google.protobuf.ITimestamp|null); /** ListMessagesRequest endTime. */ public endTime?: (google.protobuf.ITimestamp|null); /** ListMessagesRequest filter. */ public filter: string; /** * Creates a new ListMessagesRequest instance using the specified properties. * @param [properties] Properties to set * @returns ListMessagesRequest instance */ public static create(properties?: enfonica.messaging.v1.IListMessagesRequest): enfonica.messaging.v1.ListMessagesRequest; /** * Encodes the specified ListMessagesRequest message. Does not implicitly {@link enfonica.messaging.v1.ListMessagesRequest.verify|verify} messages. * @param message ListMessagesRequest message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ public static encode(message: enfonica.messaging.v1.IListMessagesRequest, writer?: $protobuf.Writer): $protobuf.Writer; /** * Encodes the specified ListMessagesRequest message, length delimited. Does not implicitly {@link enfonica.messaging.v1.ListMessagesRequest.verify|verify} messages. * @param message ListMessagesRequest message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ public static encodeDelimited(message: enfonica.messaging.v1.IListMessagesRequest, writer?: $protobuf.Writer): $protobuf.Writer; /** * Decodes a ListMessagesRequest message from the specified reader or buffer. * @param reader Reader or buffer to decode from * @param [length] Message length if known beforehand * @returns ListMessagesRequest * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): enfonica.messaging.v1.ListMessagesRequest; /** * Decodes a ListMessagesRequest message from the specified reader or buffer, length delimited. * @param reader Reader or buffer to decode from * @returns ListMessagesRequest * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): enfonica.messaging.v1.ListMessagesRequest; /** * Verifies a ListMessagesRequest message. * @param message Plain object to verify * @returns `null` if valid, otherwise the reason why it is not */ public static verify(message: { [k: string]: any }): (string|null); /** * Creates a ListMessagesRequest message from a plain object. Also converts values to their respective internal types. * @param object Plain object * @returns ListMessagesRequest */ public static fromObject(object: { [k: string]: any }): enfonica.messaging.v1.ListMessagesRequest; /** * Creates a plain object from a ListMessagesRequest message. Also converts values to other types if specified. * @param message ListMessagesRequest * @param [options] Conversion options * @returns Plain object */ public static toObject(message: enfonica.messaging.v1.ListMessagesRequest, options?: $protobuf.IConversionOptions): { [k: string]: any }; /** * Converts this ListMessagesRequest to JSON. * @returns JSON object */ public toJSON(): { [k: string]: any }; } /** Properties of a ListMessagesResponse. */ interface IListMessagesResponse { /** ListMessagesResponse messages */ messages?: (enfonica.messaging.v1.IMessage[]|null); /** ListMessagesResponse nextPageToken */ nextPageToken?: (string|null); } /** Represents a ListMessagesResponse. */ class ListMessagesResponse implements IListMessagesResponse { /** * Constructs a new ListMessagesResponse. * @param [properties] Properties to set */ constructor(properties?: enfonica.messaging.v1.IListMessagesResponse); /** ListMessagesResponse messages. */ public messages: enfonica.messaging.v1.IMessage[]; /** ListMessagesResponse nextPageToken. */ public nextPageToken: string; /** * Creates a new ListMessagesResponse instance using the specified properties. * @param [properties] Properties to set * @returns ListMessagesResponse instance */ public static create(properties?: enfonica.messaging.v1.IListMessagesResponse): enfonica.messaging.v1.ListMessagesResponse; /** * Encodes the specified ListMessagesResponse message. Does not implicitly {@link enfonica.messaging.v1.ListMessagesResponse.verify|verify} messages. * @param message ListMessagesResponse message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ public static encode(message: enfonica.messaging.v1.IListMessagesResponse, writer?: $protobuf.Writer): $protobuf.Writer; /** * Encodes the specified ListMessagesResponse message, length delimited. Does not implicitly {@link enfonica.messaging.v1.ListMessagesResponse.verify|verify} messages. * @param message ListMessagesResponse message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ public static encodeDelimited(message: enfonica.messaging.v1.IListMessagesResponse, writer?: $protobuf.Writer): $protobuf.Writer; /** * Decodes a ListMessagesResponse message from the specified reader or buffer. * @param reader Reader or buffer to decode from * @param [length] Message length if known beforehand * @returns ListMessagesResponse * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): enfonica.messaging.v1.ListMessagesResponse; /** * Decodes a ListMessagesResponse message from the specified reader or buffer, length delimited. * @param reader Reader or buffer to decode from * @returns ListMessagesResponse * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): enfonica.messaging.v1.ListMessagesResponse; /** * Verifies a ListMessagesResponse message. * @param message Plain object to verify * @returns `null` if valid, otherwise the reason why it is not */ public static verify(message: { [k: string]: any }): (string|null); /** * Creates a ListMessagesResponse message from a plain object. Also converts values to their respective internal types. * @param object Plain object * @returns ListMessagesResponse */ public static fromObject(object: { [k: string]: any }): enfonica.messaging.v1.ListMessagesResponse; /** * Creates a plain object from a ListMessagesResponse message. Also converts values to other types if specified. * @param message ListMessagesResponse * @param [options] Conversion options * @returns Plain object */ public static toObject(message: enfonica.messaging.v1.ListMessagesResponse, options?: $protobuf.IConversionOptions): { [k: string]: any }; /** * Converts this ListMessagesResponse to JSON. * @returns JSON object */ public toJSON(): { [k: string]: any }; } /** Represents an Unsubscribers */ class Unsubscribers extends $protobuf.rpc.Service { /** * Constructs a new Unsubscribers service. * @param rpcImpl RPC implementation * @param [requestDelimited=false] Whether requests are length-delimited * @param [responseDelimited=false] Whether responses are length-delimited */ constructor(rpcImpl: $protobuf.RPCImpl, requestDelimited?: boolean, responseDelimited?: boolean); /** * Creates new Unsubscribers service using the specified rpc implementation. * @param rpcImpl RPC implementation * @param [requestDelimited=false] Whether requests are length-delimited * @param [responseDelimited=false] Whether responses are length-delimited * @returns RPC service. Useful where requests and/or responses are streamed. */ public static create(rpcImpl: $protobuf.RPCImpl, requestDelimited?: boolean, responseDelimited?: boolean): Unsubscribers; /** * Calls CreateUnsubscriber. * @param request CreateUnsubscriberRequest message or plain object * @param callback Node-style callback called with the error, if any, and Unsubscriber */ public createUnsubscriber(request: enfonica.messaging.v1.ICreateUnsubscriberRequest, callback: enfonica.messaging.v1.Unsubscribers.CreateUnsubscriberCallback): void; /** * Calls CreateUnsubscriber. * @param request CreateUnsubscriberRequest message or plain object * @returns Promise */ public createUnsubscriber(request: enfonica.messaging.v1.ICreateUnsubscriberRequest): Promise<enfonica.messaging.v1.Unsubscriber>; /** * Calls GetUnsubscriber. * @param request GetUnsubscriberRequest message or plain object * @param callback Node-style callback called with the error, if any, and Unsubscriber */ public getUnsubscriber(request: enfonica.messaging.v1.IGetUnsubscriberRequest, callback: enfonica.messaging.v1.Unsubscribers.GetUnsubscriberCallback): void; /** * Calls GetUnsubscriber. * @param request GetUnsubscriberRequest message or plain object * @returns Promise */ public getUnsubscriber(request: enfonica.messaging.v1.IGetUnsubscriberRequest): Promise<enfonica.messaging.v1.Unsubscriber>; /** * Calls ListUnsubscribers. * @param request ListUnsubscribersRequest message or plain object * @param callback Node-style callback called with the error, if any, and ListUnsubscribersResponse */ public listUnsubscribers(request: enfonica.messaging.v1.IListUnsubscribersRequest, callback: enfonica.messaging.v1.Unsubscribers.ListUnsubscribersCallback): void; /** * Calls ListUnsubscribers. * @param request ListUnsubscribersRequest message or plain object * @returns Promise */ public listUnsubscribers(request: enfonica.messaging.v1.IListUnsubscribersRequest): Promise<enfonica.messaging.v1.ListUnsubscribersResponse>; /** * Calls UpdateUnsubscriber. * @param request UpdateUnsubscriberRequest message or plain object * @param callback Node-style callback called with the error, if any, and Unsubscriber */ public updateUnsubscriber(request: enfonica.messaging.v1.IUpdateUnsubscriberRequest, callback: enfonica.messaging.v1.Unsubscribers.UpdateUnsubscriberCallback): void; /** * Calls UpdateUnsubscriber. * @param request UpdateUnsubscriberRequest message or plain object * @returns Promise */ public updateUnsubscriber(request: enfonica.messaging.v1.IUpdateUnsubscriberRequest): Promise<enfonica.messaging.v1.Unsubscriber>; /** * Calls DeleteUnsubscriber. * @param request DeleteUnsubscriberRequest message or plain object * @param callback Node-style callback called with the error, if any, and Unsubscriber */ public deleteUnsubscriber(request: enfonica.messaging.v1.IDeleteUnsubscriberRequest, callback: enfonica.messaging.v1.Unsubscribers.DeleteUnsubscriberCallback): void; /** * Calls DeleteUnsubscriber. * @param request DeleteUnsubscriberRequest message or plain object * @returns Promise */ public deleteUnsubscriber(request: enfonica.messaging.v1.IDeleteUnsubscriberRequest): Promise<enfonica.messaging.v1.Unsubscriber>; } namespace Unsubscribers { /** * Callback as used by {@link enfonica.messaging.v1.Unsubscribers|createUnsubscriber}. * @param error Error, if any * @param [response] Unsubscriber */ type CreateUnsubscriberCallback = (error: (Error|null), response?: enfonica.messaging.v1.Unsubscriber) => void; /** * Callback as used by {@link enfonica.messaging.v1.Unsubscribers|getUnsubscriber}. * @param error Error, if any * @param [response] Unsubscriber */ type GetUnsubscriberCallback = (error: (Error|null), response?: enfonica.messaging.v1.Unsubscriber) => void; /** * Callback as used by {@link enfonica.messaging.v1.Unsubscribers|listUnsubscribers}. * @param error Error, if any * @param [response] ListUnsubscribersResponse */ type ListUnsubscribersCallback = (error: (Error|null), response?: enfonica.messaging.v1.ListUnsubscribersResponse) => void; /** * Callback as used by {@link enfonica.messaging.v1.Unsubscribers|updateUnsubscriber}. * @param error Error, if any * @param [response] Unsubscriber */ type UpdateUnsubscriberCallback = (error: (Error|null), response?: enfonica.messaging.v1.Unsubscriber) => void; /** * Callback as used by {@link enfonica.messaging.v1.Unsubscribers|deleteUnsubscriber}. * @param error Error, if any * @param [response] Unsubscriber */ type DeleteUnsubscriberCallback = (error: (Error|null), response?: enfonica.messaging.v1.Unsubscriber) => void; } /** Properties of an Unsubscriber. */ interface IUnsubscriber { /** Unsubscriber name */ name?: (string|null); /** Unsubscriber phone */ phone?: (string|null); /** Unsubscriber unsubscribeMethod */ unsubscribeMethod?: (enfonica.messaging.v1.Unsubscriber.UnsubscribeMethod|keyof typeof enfonica.messaging.v1.Unsubscriber.UnsubscribeMethod|null); /** Unsubscriber labels */ labels?: ({ [k: string]: string }|null); /** Unsubscriber createTime */ createTime?: (google.protobuf.ITimestamp|null); } /** Represents an Unsubscriber. */ class Unsubscriber implements IUnsubscriber { /** * Constructs a new Unsubscriber. * @param [properties] Properties to set */ constructor(properties?: enfonica.messaging.v1.IUnsubscriber); /** Unsubscriber name. */ public name: string; /** Unsubscriber phone. */ public phone: string; /** Unsubscriber unsubscribeMethod. */ public unsubscribeMethod: (enfonica.messaging.v1.Unsubscriber.UnsubscribeMethod|keyof typeof enfonica.messaging.v1.Unsubscriber.UnsubscribeMethod); /** Unsubscriber labels. */ public labels: { [k: string]: string }; /** Unsubscriber createTime. */ public createTime?: (google.protobuf.ITimestamp|null); /** * Creates a new Unsubscriber instance using the specified properties. * @param [properties] Properties to set * @returns Unsubscriber instance */ public static create(properties?: enfonica.messaging.v1.IUnsubscriber): enfonica.messaging.v1.Unsubscriber; /** * Encodes the specified Unsubscriber message. Does not implicitly {@link enfonica.messaging.v1.Unsubscriber.verify|verify} messages. * @param message Unsubscriber message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ public static encode(message: enfonica.messaging.v1.IUnsubscriber, writer?: $protobuf.Writer): $protobuf.Writer; /** * Encodes the specified Unsubscriber message, length delimited. Does not implicitly {@link enfonica.messaging.v1.Unsubscriber.verify|verify} messages. * @param message Unsubscriber message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ public static encodeDelimited(message: enfonica.messaging.v1.IUnsubscriber, writer?: $protobuf.Writer): $protobuf.Writer; /** * Decodes an Unsubscriber message from the specified reader or buffer. * @param reader Reader or buffer to decode from * @param [length] Message length if known beforehand * @returns Unsubscriber * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): enfonica.messaging.v1.Unsubscriber; /** * Decodes an Unsubscriber message from the specified reader or buffer, length delimited. * @param reader Reader or buffer to decode from * @returns Unsubscriber * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): enfonica.messaging.v1.Unsubscriber; /** * Verifies an Unsubscriber message. * @param message Plain object to verify * @returns `null` if valid, otherwise the reason why it is not */ public static verify(message: { [k: string]: any }): (string|null); /** * Creates an Unsubscriber message from a plain object. Also converts values to their respective internal types. * @param object Plain object * @returns Unsubscriber */ public static fromObject(object: { [k: string]: any }): enfonica.messaging.v1.Unsubscriber; /** * Creates a plain object from an Unsubscriber message. Also converts values to other types if specified. * @param message Unsubscriber * @param [options] Conversion options * @returns Plain object */ public static toObject(message: enfonica.messaging.v1.Unsubscriber, options?: $protobuf.IConversionOptions): { [k: string]: any }; /** * Converts this Unsubscriber to JSON. * @returns JSON object */ public toJSON(): { [k: string]: any }; } namespace Unsubscriber { /** UnsubscribeMethod enum. */ enum UnsubscribeMethod { UNSUBSCRIBE_METHOD_UNSPECIFIED = 0, URL = 1, MESSAGE = 2, MANUAL = 3 } } /** Properties of a CreateUnsubscriberRequest. */ interface ICreateUnsubscriberRequest { /** CreateUnsubscriberRequest parent */ parent?: (string|null); /** CreateUnsubscriberRequest unsubscriber */ unsubscriber?: (enfonica.messaging.v1.IUnsubscriber|null); } /** Represents a CreateUnsubscriberRequest. */ class CreateUnsubscriberRequest implements ICreateUnsubscriberRequest { /** * Constructs a new CreateUnsubscriberRequest. * @param [properties] Properties to set */ constructor(properties?: enfonica.messaging.v1.ICreateUnsubscriberRequest); /** CreateUnsubscriberRequest parent. */ public parent: string; /** CreateUnsubscrib