{"version":3,"sources":["node_modules/@vendasta/task-manager/fesm2020/vendasta-task-manager.mjs"],"sourcesContent":["import * as i0 from '@angular/core';\nimport { Injectable } from '@angular/core';\nimport { map, take } from 'rxjs/operators';\nimport * as i1 from '@angular/common/http';\nimport { HttpHeaders } from '@angular/common/http';\n\n// *********************************\n// Code generated by sdkgen\n// DO NOT EDIT!.\n//\n// Enums.\n// *********************************\nvar PersonaType = /*#__PURE__*/function (PersonaType) {\n PersonaType[PersonaType[\"PERSONA_TYPE_UNSET\"] = 0] = \"PERSONA_TYPE_UNSET\";\n PersonaType[PersonaType[\"PERSONA_TYPE_PARTNER\"] = 1] = \"PERSONA_TYPE_PARTNER\";\n PersonaType[PersonaType[\"PERSONA_TYPE_SALES_PERSON\"] = 2] = \"PERSONA_TYPE_SALES_PERSON\";\n PersonaType[PersonaType[\"PERSONA_TYPE_DIGITAL_AGENT\"] = 3] = \"PERSONA_TYPE_DIGITAL_AGENT\";\n PersonaType[PersonaType[\"PERSONA_TYPE_SMB\"] = 4] = \"PERSONA_TYPE_SMB\";\n return PersonaType;\n}(PersonaType || {});\n// *********************************\n// Code generated by sdkgen\n// DO NOT EDIT!.\n//\n// Enums.\n// *********************************\nvar KeyValueField = /*#__PURE__*/function (KeyValueField) {\n KeyValueField[KeyValueField[\"KEY_VALUE_FIELD_UNSET\"] = 0] = \"KEY_VALUE_FIELD_UNSET\";\n KeyValueField[KeyValueField[\"KEY_VALUE_FIELD_DATA\"] = 1] = \"KEY_VALUE_FIELD_DATA\";\n KeyValueField[KeyValueField[\"KEY_VALUE_FIELD_METADATA\"] = 2] = \"KEY_VALUE_FIELD_METADATA\";\n return KeyValueField;\n}(KeyValueField || {});\nvar Metric = /*#__PURE__*/function (Metric) {\n Metric[Metric[\"METRIC_NAMESPACE\"] = 0] = \"METRIC_NAMESPACE\";\n Metric[Metric[\"METRIC_TYPE\"] = 1] = \"METRIC_TYPE\";\n Metric[Metric[\"METRIC_TAG\"] = 2] = \"METRIC_TAG\";\n Metric[Metric[\"METRIC_STATUS\"] = 3] = \"METRIC_STATUS\";\n Metric[Metric[\"METRIC_ASSIGNEE\"] = 4] = \"METRIC_ASSIGNEE\";\n Metric[Metric[\"METRIC_OLDEST_DUE_DATE\"] = 5] = \"METRIC_OLDEST_DUE_DATE\";\n Metric[Metric[\"METRIC_STATUS_PER_TYPE\"] = 6] = \"METRIC_STATUS_PER_TYPE\";\n Metric[Metric[\"METRIC_TYPE_PER_ASSIGNEE\"] = 7] = \"METRIC_TYPE_PER_ASSIGNEE\";\n Metric[Metric[\"METRIC_STATUS_PER_ASSIGNEE_PER_TYPE\"] = 8] = \"METRIC_STATUS_PER_ASSIGNEE_PER_TYPE\";\n Metric[Metric[\"METRIC_UNUSED\"] = 9] = \"METRIC_UNUSED\";\n Metric[Metric[\"METRIC_STATUS_PER_ASSIGNEE\"] = 10] = \"METRIC_STATUS_PER_ASSIGNEE\";\n Metric[Metric[\"METRIC_PARTNER\"] = 11] = \"METRIC_PARTNER\";\n Metric[Metric[\"METRIC_PER_DAY\"] = 12] = \"METRIC_PER_DAY\";\n Metric[Metric[\"METRIC_FULFILLING_PARTNER\"] = 13] = \"METRIC_FULFILLING_PARTNER\";\n Metric[Metric[\"METRIC_TYPE_PER_DAY\"] = 14] = \"METRIC_TYPE_PER_DAY\";\n Metric[Metric[\"METRIC_TAG_PER_DAY\"] = 15] = \"METRIC_TAG_PER_DAY\";\n Metric[Metric[\"METRIC_COUNT_BY_DATE_RANGE\"] = 16] = \"METRIC_COUNT_BY_DATE_RANGE\";\n Metric[Metric[\"METRIC_TASKS_COMPLETED_BY_DELAY\"] = 17] = \"METRIC_TASKS_COMPLETED_BY_DELAY\";\n Metric[Metric[\"METRIC_TASKS_OVERDUE_BY_DELAY\"] = 18] = \"METRIC_TASKS_OVERDUE_BY_DELAY\";\n return Metric;\n}(Metric || {});\nvar RangeField = /*#__PURE__*/function (RangeField) {\n RangeField[RangeField[\"RANGE_FIELD_DUE_DATE\"] = 0] = \"RANGE_FIELD_DUE_DATE\";\n RangeField[RangeField[\"RANGE_FIELD_COMPLETION_DATE\"] = 1] = \"RANGE_FIELD_COMPLETION_DATE\";\n RangeField[RangeField[\"RANGE_FIELD_CREATED_DATE\"] = 2] = \"RANGE_FIELD_CREATED_DATE\";\n return RangeField;\n}(RangeField || {});\nvar SortDirection = /*#__PURE__*/function (SortDirection) {\n SortDirection[SortDirection[\"SORT_DIRECTION_DESCENDING\"] = 0] = \"SORT_DIRECTION_DESCENDING\";\n SortDirection[SortDirection[\"SORT_DIRECTION_ASCENDING\"] = 1] = \"SORT_DIRECTION_ASCENDING\";\n return SortDirection;\n}(SortDirection || {});\n// *********************************\n// Code generated by sdkgen\n// DO NOT EDIT!.\n//\n// Enums.\n// *********************************\nvar ExportColumns = /*#__PURE__*/function (ExportColumns) {\n ExportColumns[ExportColumns[\"EXPORT_COLUMNS_UNSET\"] = 0] = \"EXPORT_COLUMNS_UNSET\";\n ExportColumns[ExportColumns[\"EXPORT_COLUMNS_TITLE\"] = 1] = \"EXPORT_COLUMNS_TITLE\";\n ExportColumns[ExportColumns[\"EXPORT_COLUMNS_ACCOUNT\"] = 2] = \"EXPORT_COLUMNS_ACCOUNT\";\n ExportColumns[ExportColumns[\"EXPORT_COLUMNS_ADDRESS\"] = 3] = \"EXPORT_COLUMNS_ADDRESS\";\n ExportColumns[ExportColumns[\"EXPORT_COLUMNS_STATUS\"] = 4] = \"EXPORT_COLUMNS_STATUS\";\n ExportColumns[ExportColumns[\"EXPORT_COLUMNS_ASSIGNEE\"] = 5] = \"EXPORT_COLUMNS_ASSIGNEE\";\n ExportColumns[ExportColumns[\"EXPORT_COLUMNS_DUE_DATE\"] = 6] = \"EXPORT_COLUMNS_DUE_DATE\";\n ExportColumns[ExportColumns[\"EXPORT_COLUMNS_CREATED_DATE\"] = 7] = \"EXPORT_COLUMNS_CREATED_DATE\";\n ExportColumns[ExportColumns[\"EXPORT_COLUMNS_COMPLETION_DATE\"] = 8] = \"EXPORT_COLUMNS_COMPLETION_DATE\";\n ExportColumns[ExportColumns[\"EXPORT_COLUMNS_UPDATED\"] = 9] = \"EXPORT_COLUMNS_UPDATED\";\n ExportColumns[ExportColumns[\"EXPORT_COLUMNS_PARTNER\"] = 10] = \"EXPORT_COLUMNS_PARTNER\";\n return ExportColumns;\n}(ExportColumns || {});\nvar ExportTypes = /*#__PURE__*/function (ExportTypes) {\n ExportTypes[ExportTypes[\"EXPORT_TYPES_UNSET\"] = 0] = \"EXPORT_TYPES_UNSET\";\n ExportTypes[ExportTypes[\"EXPORT_TYPES_CSV\"] = 1] = \"EXPORT_TYPES_CSV\";\n return ExportTypes;\n}(ExportTypes || {});\n// *********************************\n// Code generated by sdkgen\n// DO NOT EDIT!.\n//\n// Enums.\n// *********************************\nvar AccountSocialService = /*#__PURE__*/function (AccountSocialService) {\n AccountSocialService[AccountSocialService[\"ACCOUNT_SOCIAL_SERVICE_UNDEFINED\"] = 0] = \"ACCOUNT_SOCIAL_SERVICE_UNDEFINED\";\n AccountSocialService[AccountSocialService[\"ACCOUNT_SOCIAL_SERVICE_FACEBOOK\"] = 1] = \"ACCOUNT_SOCIAL_SERVICE_FACEBOOK\";\n AccountSocialService[AccountSocialService[\"ACCOUNT_SOCIAL_SERVICE_GMB\"] = 2] = \"ACCOUNT_SOCIAL_SERVICE_GMB\";\n return AccountSocialService;\n}(AccountSocialService || {});\n// *********************************\n// Code generated by sdkgen\n// DO NOT EDIT!.\n//\n// Enums.\n// *********************************\nvar ProductFilterOperator = /*#__PURE__*/function (ProductFilterOperator) {\n ProductFilterOperator[ProductFilterOperator[\"PRODUCT_FILTER_OPERATOR_UNSET\"] = 0] = \"PRODUCT_FILTER_OPERATOR_UNSET\";\n ProductFilterOperator[ProductFilterOperator[\"PRODUCT_FILTER_OPERATOR_OR\"] = 1] = \"PRODUCT_FILTER_OPERATOR_OR\";\n ProductFilterOperator[ProductFilterOperator[\"PRODUCT_FILTER_OPERATOR_AND\"] = 2] = \"PRODUCT_FILTER_OPERATOR_AND\";\n return ProductFilterOperator;\n}(ProductFilterOperator || {});\n// *********************************\n// Code generated by sdkgen\n// DO NOT EDIT!.\n//\n// Enums.\n// *********************************\nvar DateField = /*#__PURE__*/function (DateField) {\n DateField[DateField[\"DATE_FIELD_INVALID\"] = 0] = \"DATE_FIELD_INVALID\";\n DateField[DateField[\"DATE_FIELD_DUE\"] = 1] = \"DATE_FIELD_DUE\";\n DateField[DateField[\"DATE_FIELD_CREATED\"] = 2] = \"DATE_FIELD_CREATED\";\n DateField[DateField[\"DATE_FIELD_COMPLETED\"] = 3] = \"DATE_FIELD_COMPLETED\";\n DateField[DateField[\"DATE_FIELD_DELETED\"] = 4] = \"DATE_FIELD_DELETED\";\n return DateField;\n}(DateField || {});\nvar FuzzyRangeField = /*#__PURE__*/function (FuzzyRangeField) {\n FuzzyRangeField[FuzzyRangeField[\"FUZZY_RANGE_FIELD_INVALID\"] = 0] = \"FUZZY_RANGE_FIELD_INVALID\";\n FuzzyRangeField[FuzzyRangeField[\"FUZZY_RANGE_FIELD_RUNTIME_COMPLETE_LATE\"] = 1] = \"FUZZY_RANGE_FIELD_RUNTIME_COMPLETE_LATE\";\n FuzzyRangeField[FuzzyRangeField[\"FUZZY_RANGE_FIELD_RUNTIME_OVERDUE_DAYS\"] = 2] = \"FUZZY_RANGE_FIELD_RUNTIME_OVERDUE_DAYS\";\n return FuzzyRangeField;\n}(FuzzyRangeField || {});\nvar FuzzySortDirection = /*#__PURE__*/function (FuzzySortDirection) {\n FuzzySortDirection[FuzzySortDirection[\"FUZZY_SORT_DIRECTION_DESCENDING\"] = 0] = \"FUZZY_SORT_DIRECTION_DESCENDING\";\n FuzzySortDirection[FuzzySortDirection[\"FUZZY_SORT_DIRECTION_ASCENDING\"] = 1] = \"FUZZY_SORT_DIRECTION_ASCENDING\";\n return FuzzySortDirection;\n}(FuzzySortDirection || {});\nvar Operator = /*#__PURE__*/function (Operator) {\n Operator[Operator[\"OPERATOR_INVALID\"] = 0] = \"OPERATOR_INVALID\";\n Operator[Operator[\"OPERATOR_AND\"] = 1] = \"OPERATOR_AND\";\n Operator[Operator[\"OPERATOR_OR\"] = 2] = \"OPERATOR_OR\";\n return Operator;\n}(Operator || {});\nvar RuntimeField = /*#__PURE__*/function (RuntimeField) {\n RuntimeField[RuntimeField[\"RUNTIME_FIELD_INVALID\"] = 0] = \"RUNTIME_FIELD_INVALID\";\n RuntimeField[RuntimeField[\"RUNTIME_FIELD_COMPLETE_LATE\"] = 1] = \"RUNTIME_FIELD_COMPLETE_LATE\";\n RuntimeField[RuntimeField[\"RUNTIME_FIELD_OVERDUE_DAYS\"] = 2] = \"RUNTIME_FIELD_OVERDUE_DAYS\";\n return RuntimeField;\n}(RuntimeField || {});\n// *********************************\n// Code generated by sdkgen\n// DO NOT EDIT!.\n//\n// Enums.\n// *********************************\nvar HydratedConversationPersonaType = /*#__PURE__*/function (HydratedConversationPersonaType) {\n HydratedConversationPersonaType[HydratedConversationPersonaType[\"HYDRATED_CONVERSATION_PERSONA_TYPE_UNSET\"] = 0] = \"HYDRATED_CONVERSATION_PERSONA_TYPE_UNSET\";\n HydratedConversationPersonaType[HydratedConversationPersonaType[\"HYDRATED_CONVERSATION_PERSONA_TYPE_PARTNER\"] = 1] = \"HYDRATED_CONVERSATION_PERSONA_TYPE_PARTNER\";\n HydratedConversationPersonaType[HydratedConversationPersonaType[\"HYDRATED_CONVERSATION_PERSONA_TYPE_SALES_PERSON\"] = 2] = \"HYDRATED_CONVERSATION_PERSONA_TYPE_SALES_PERSON\";\n HydratedConversationPersonaType[HydratedConversationPersonaType[\"HYDRATED_CONVERSATION_PERSONA_TYPE_DIGITAL_AGENT\"] = 3] = \"HYDRATED_CONVERSATION_PERSONA_TYPE_DIGITAL_AGENT\";\n HydratedConversationPersonaType[HydratedConversationPersonaType[\"HYDRATED_CONVERSATION_PERSONA_TYPE_SMB\"] = 4] = \"HYDRATED_CONVERSATION_PERSONA_TYPE_SMB\";\n return HydratedConversationPersonaType;\n}(HydratedConversationPersonaType || {});\nvar HydratedRangeField = /*#__PURE__*/function (HydratedRangeField) {\n HydratedRangeField[HydratedRangeField[\"HYDRATED_RANGE_FIELD_DUE_DATE\"] = 0] = \"HYDRATED_RANGE_FIELD_DUE_DATE\";\n HydratedRangeField[HydratedRangeField[\"HYDRATED_RANGE_FIELD_COMPLETION_DATE\"] = 1] = \"HYDRATED_RANGE_FIELD_COMPLETION_DATE\";\n HydratedRangeField[HydratedRangeField[\"HYDRATED_RANGE_FIELD_CREATED_DATE\"] = 2] = \"HYDRATED_RANGE_FIELD_CREATED_DATE\";\n return HydratedRangeField;\n}(HydratedRangeField || {});\nvar HydratedSortDirection = /*#__PURE__*/function (HydratedSortDirection) {\n HydratedSortDirection[HydratedSortDirection[\"HYDRATED_SORT_DIRECTION_DESCENDING\"] = 0] = \"HYDRATED_SORT_DIRECTION_DESCENDING\";\n HydratedSortDirection[HydratedSortDirection[\"HYDRATED_SORT_DIRECTION_ASCENDING\"] = 1] = \"HYDRATED_SORT_DIRECTION_ASCENDING\";\n return HydratedSortDirection;\n}(HydratedSortDirection || {});\n// *********************************\n// Code generated by sdkgen\n// DO NOT EDIT!.\n//\n// Enums.\n// *********************************\nvar RecurringTaskExpires = /*#__PURE__*/function (RecurringTaskExpires) {\n RecurringTaskExpires[RecurringTaskExpires[\"RECURRING_TASK_EXPIRES_NEVER\"] = 0] = \"RECURRING_TASK_EXPIRES_NEVER\";\n RecurringTaskExpires[RecurringTaskExpires[\"RECURRING_TASK_EXPIRES_OCCURRENCES\"] = 1] = \"RECURRING_TASK_EXPIRES_OCCURRENCES\";\n RecurringTaskExpires[RecurringTaskExpires[\"RECURRING_TASK_EXPIRES_EXPIRATION_DATE\"] = 2] = \"RECURRING_TASK_EXPIRES_EXPIRATION_DATE\";\n return RecurringTaskExpires;\n}(RecurringTaskExpires || {});\nvar RecurringTaskFrequencies = /*#__PURE__*/function (RecurringTaskFrequencies) {\n RecurringTaskFrequencies[RecurringTaskFrequencies[\"RECURRING_TASK_FREQUENCIES_UNSET\"] = 0] = \"RECURRING_TASK_FREQUENCIES_UNSET\";\n RecurringTaskFrequencies[RecurringTaskFrequencies[\"RECURRING_TASK_FREQUENCIES_DAILY\"] = 1] = \"RECURRING_TASK_FREQUENCIES_DAILY\";\n RecurringTaskFrequencies[RecurringTaskFrequencies[\"RECURRING_TASK_FREQUENCIES_WEEKLY\"] = 2] = \"RECURRING_TASK_FREQUENCIES_WEEKLY\";\n RecurringTaskFrequencies[RecurringTaskFrequencies[\"RECURRING_TASK_FREQUENCIES_MONTHLY\"] = 3] = \"RECURRING_TASK_FREQUENCIES_MONTHLY\";\n RecurringTaskFrequencies[RecurringTaskFrequencies[\"RECURRING_TASK_FREQUENCIES_YEARLY\"] = 4] = \"RECURRING_TASK_FREQUENCIES_YEARLY\";\n RecurringTaskFrequencies[RecurringTaskFrequencies[\"RECURRING_TASK_FREQUENCIES_CUSTOM\"] = 5] = \"RECURRING_TASK_FREQUENCIES_CUSTOM\";\n return RecurringTaskFrequencies;\n}(RecurringTaskFrequencies || {});\nvar RecurringTaskTypes = /*#__PURE__*/function (RecurringTaskTypes) {\n RecurringTaskTypes[RecurringTaskTypes[\"RECURRING_TASK_TYPES_UNSET\"] = 0] = \"RECURRING_TASK_TYPES_UNSET\";\n RecurringTaskTypes[RecurringTaskTypes[\"RECURRING_TASK_TYPES_TASK\"] = 1] = \"RECURRING_TASK_TYPES_TASK\";\n RecurringTaskTypes[RecurringTaskTypes[\"RECURRING_TASK_TYPES_PROJECT\"] = 2] = \"RECURRING_TASK_TYPES_PROJECT\";\n return RecurringTaskTypes;\n}(RecurringTaskTypes || {});\n// *********************************\n// Code generated by sdkgen\n// DO NOT EDIT!.\n//\n// Enums.\n// *********************************\nvar AuxiliaryDataFieldType = /*#__PURE__*/function (AuxiliaryDataFieldType) {\n AuxiliaryDataFieldType[AuxiliaryDataFieldType[\"AUXILIARY_DATA_FIELD_TYPE_INVALID\"] = 0] = \"AUXILIARY_DATA_FIELD_TYPE_INVALID\";\n AuxiliaryDataFieldType[AuxiliaryDataFieldType[\"AUXILIARY_DATA_FIELD_TYPE_STRING\"] = 1] = \"AUXILIARY_DATA_FIELD_TYPE_STRING\";\n AuxiliaryDataFieldType[AuxiliaryDataFieldType[\"AUXILIARY_DATA_FIELD_TYPE_INTEGER\"] = 2] = \"AUXILIARY_DATA_FIELD_TYPE_INTEGER\";\n AuxiliaryDataFieldType[AuxiliaryDataFieldType[\"AUXILIARY_DATA_FIELD_TYPE_DATE\"] = 3] = \"AUXILIARY_DATA_FIELD_TYPE_DATE\";\n AuxiliaryDataFieldType[AuxiliaryDataFieldType[\"AUXILIARY_DATA_FIELD_TYPE_DROPDOWN\"] = 4] = \"AUXILIARY_DATA_FIELD_TYPE_DROPDOWN\";\n AuxiliaryDataFieldType[AuxiliaryDataFieldType[\"AUXILIARY_DATA_FIELD_TYPE_CURRENCY\"] = 5] = \"AUXILIARY_DATA_FIELD_TYPE_CURRENCY\";\n return AuxiliaryDataFieldType;\n}(AuxiliaryDataFieldType || {});\n// *********************************\n// Code generated by sdkgen\n// DO NOT EDIT!.\n//\n// Enums.\n// *********************************\nvar ActivityTypes = /*#__PURE__*/function (ActivityTypes) {\n ActivityTypes[ActivityTypes[\"ACTIVITY_TYPES_UNSET\"] = 0] = \"ACTIVITY_TYPES_UNSET\";\n ActivityTypes[ActivityTypes[\"ACTIVITY_TYPES_EMAIL\"] = 1] = \"ACTIVITY_TYPES_EMAIL\";\n ActivityTypes[ActivityTypes[\"ACTIVITY_TYPES_MEETING\"] = 2] = \"ACTIVITY_TYPES_MEETING\";\n ActivityTypes[ActivityTypes[\"ACTIVITY_TYPES_CALL\"] = 3] = \"ACTIVITY_TYPES_CALL\";\n return ActivityTypes;\n}(ActivityTypes || {});\nvar CommentType = /*#__PURE__*/function (CommentType) {\n CommentType[CommentType[\"COMMENT_TYPE_UNDEFINED\"] = 0] = \"COMMENT_TYPE_UNDEFINED\";\n CommentType[CommentType[\"COMMENT_TYPE_PUBLIC\"] = 1] = \"COMMENT_TYPE_PUBLIC\";\n CommentType[CommentType[\"COMMENT_TYPE_PRIVATE\"] = 2] = \"COMMENT_TYPE_PRIVATE\";\n return CommentType;\n}(CommentType || {});\nvar ConversationTypes = /*#__PURE__*/function (ConversationTypes) {\n ConversationTypes[ConversationTypes[\"CONVERSATION_TYPES_UNSET\"] = 0] = \"CONVERSATION_TYPES_UNSET\";\n ConversationTypes[ConversationTypes[\"CONVERSATION_TYPES_PROJECT_TRACKER_FEEDBACK\"] = 1] = \"CONVERSATION_TYPES_PROJECT_TRACKER_FEEDBACK\";\n ConversationTypes[ConversationTypes[\"CONVERSATION_TYPES_PROJECT_TRACKER_APPROVAL\"] = 2] = \"CONVERSATION_TYPES_PROJECT_TRACKER_APPROVAL\";\n ConversationTypes[ConversationTypes[\"CONVERSATION_TYPES_TAGGING\"] = 3] = \"CONVERSATION_TYPES_TAGGING\";\n return ConversationTypes;\n}(ConversationTypes || {});\nvar PlatformLocation = /*#__PURE__*/function (PlatformLocation) {\n PlatformLocation[PlatformLocation[\"PLATFORM_LOCATION_UNDEFINED\"] = 0] = \"PLATFORM_LOCATION_UNDEFINED\";\n PlatformLocation[PlatformLocation[\"PLATFORM_LOCATION_TASK_MANAGER\"] = 1] = \"PLATFORM_LOCATION_TASK_MANAGER\";\n PlatformLocation[PlatformLocation[\"PLATFORM_LOCATION_BUSINESS_APP\"] = 2] = \"PLATFORM_LOCATION_BUSINESS_APP\";\n PlatformLocation[PlatformLocation[\"PLATFORM_LOCATION_PARTNER_CENTER\"] = 3] = \"PLATFORM_LOCATION_PARTNER_CENTER\";\n PlatformLocation[PlatformLocation[\"PLATFORM_LOCATION_SALES_CENTER\"] = 4] = \"PLATFORM_LOCATION_SALES_CENTER\";\n return PlatformLocation;\n}(PlatformLocation || {});\n// *********************************\n// Code generated by sdkgen\n// DO NOT EDIT!.\n//\n// Enums Index.\n// *********************************\n\nfunction enumStringToValue$n(enumRef, value) {\n if (typeof value === 'number') {\n return value;\n }\n return enumRef[value];\n}\nclass AccessPermissions {\n static fromProto(proto) {\n let m = new AccessPermissions();\n m = Object.assign(m, proto);\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.read !== 'undefined') {\n toReturn['read'] = this.read;\n }\n if (typeof this.write !== 'undefined') {\n toReturn['write'] = this.write;\n }\n if (typeof this.delete !== 'undefined') {\n toReturn['delete'] = this.delete;\n }\n return toReturn;\n }\n}\nclass Attachment {\n static fromProto(proto) {\n let m = new Attachment();\n m = Object.assign(m, proto);\n if (proto.filePermissions) {\n m.filePermissions = AccessPermissions.fromProto(proto.filePermissions);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.name !== 'undefined') {\n toReturn['name'] = this.name;\n }\n if (typeof this.url !== 'undefined') {\n toReturn['url'] = this.url;\n }\n if (typeof this.contentType !== 'undefined') {\n toReturn['contentType'] = this.contentType;\n }\n if (typeof this.uploadingPersonaType !== 'undefined') {\n toReturn['uploadingPersonaType'] = this.uploadingPersonaType;\n }\n if (typeof this.filePermissions !== 'undefined' && this.filePermissions !== null) {\n toReturn['filePermissions'] = 'toApiJson' in this.filePermissions ? this.filePermissions.toApiJson() : this.filePermissions;\n }\n return toReturn;\n }\n}\nclass Conversation {\n static fromProto(proto) {\n let m = new Conversation();\n m = Object.assign(m, proto);\n if (proto.created) {\n m.created = new Date(proto.created);\n }\n if (proto.persona) {\n m.persona = enumStringToValue$n(PersonaType, proto.persona);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.sendFrom !== 'undefined') {\n toReturn['sendFrom'] = this.sendFrom;\n }\n if (typeof this.sendTo !== 'undefined') {\n toReturn['sendTo'] = this.sendTo;\n }\n if (typeof this.message !== 'undefined') {\n toReturn['message'] = this.message;\n }\n if (typeof this.created !== 'undefined' && this.created !== null) {\n toReturn['created'] = 'toApiJson' in this.created ? this.created.toApiJson() : this.created;\n }\n if (typeof this.source !== 'undefined') {\n toReturn['source'] = this.source;\n }\n if (typeof this.isPublic !== 'undefined') {\n toReturn['isPublic'] = this.isPublic;\n }\n if (typeof this.persona !== 'undefined') {\n toReturn['persona'] = this.persona;\n }\n return toReturn;\n }\n}\nclass History {\n static fromProto(proto) {\n let m = new History();\n m = Object.assign(m, proto);\n if (proto.date) {\n m.date = new Date(proto.date);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.date !== 'undefined' && this.date !== null) {\n toReturn['date'] = 'toApiJson' in this.date ? this.date.toApiJson() : this.date;\n }\n if (typeof this.user !== 'undefined') {\n toReturn['user'] = this.user;\n }\n if (typeof this.message !== 'undefined') {\n toReturn['message'] = this.message;\n }\n return toReturn;\n }\n}\nclass KeyValuesKeyValue {\n static fromProto(proto) {\n let m = new KeyValuesKeyValue();\n m = Object.assign(m, proto);\n if (proto.values) {\n m.values = proto.values.map(KeyValuesKeyValueValue.fromProto);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.values !== 'undefined' && this.values !== null) {\n toReturn['values'] = 'toApiJson' in this.values ? this.values.toApiJson() : this.values;\n }\n if (typeof this.key !== 'undefined') {\n toReturn['key'] = this.key;\n }\n return toReturn;\n }\n}\nclass KeyValues {\n static fromProto(proto) {\n let m = new KeyValues();\n m = Object.assign(m, proto);\n if (proto.keyValues) {\n m.keyValues = proto.keyValues.map(KeyValuesKeyValue.fromProto);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.keyValues !== 'undefined' && this.keyValues !== null) {\n toReturn['keyValues'] = 'toApiJson' in this.keyValues ? this.keyValues.toApiJson() : this.keyValues;\n }\n return toReturn;\n }\n}\nclass Task {\n static fromProto(proto) {\n let m = new Task();\n m = Object.assign(m, proto);\n if (proto.version) {\n m.version = parseInt(proto.version, 10);\n }\n if (proto.identity) {\n m.identity = TaskIdentity.fromProto(proto.identity);\n }\n if (proto.dueDate) {\n m.dueDate = new Date(proto.dueDate);\n }\n if (proto.history) {\n m.history = proto.history.map(History.fromProto);\n }\n if (proto.created) {\n m.created = new Date(proto.created);\n }\n if (proto.modified) {\n m.modified = new Date(proto.modified);\n }\n if (proto.completionDate) {\n m.completionDate = new Date(proto.completionDate);\n }\n if (proto.subtasks) {\n m.subtasks = proto.subtasks.map(TaskIdentity.fromProto);\n }\n if (proto.data) {\n m.data = KeyValues.fromProto(proto.data);\n }\n if (proto.metadata) {\n m.metadata = KeyValues.fromProto(proto.metadata);\n }\n if (proto.conversations) {\n m.conversations = proto.conversations.map(Conversation.fromProto);\n }\n if (proto.deleted) {\n m.deleted = new Date(proto.deleted);\n }\n if (proto.attachment) {\n m.attachment = proto.attachment.map(Attachment.fromProto);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.version !== 'undefined') {\n toReturn['version'] = this.version;\n }\n if (typeof this.identity !== 'undefined' && this.identity !== null) {\n toReturn['identity'] = 'toApiJson' in this.identity ? this.identity.toApiJson() : this.identity;\n }\n if (typeof this.title !== 'undefined') {\n toReturn['title'] = this.title;\n }\n if (typeof this.status !== 'undefined') {\n toReturn['status'] = this.status;\n }\n if (typeof this.dueDate !== 'undefined' && this.dueDate !== null) {\n toReturn['dueDate'] = 'toApiJson' in this.dueDate ? this.dueDate.toApiJson() : this.dueDate;\n }\n if (typeof this.assignees !== 'undefined') {\n toReturn['assignees'] = this.assignees;\n }\n if (typeof this.notes !== 'undefined') {\n toReturn['notes'] = this.notes;\n }\n if (typeof this.description !== 'undefined') {\n toReturn['description'] = this.description;\n }\n if (typeof this.tags !== 'undefined') {\n toReturn['tags'] = this.tags;\n }\n if (typeof this.history !== 'undefined' && this.history !== null) {\n toReturn['history'] = 'toApiJson' in this.history ? this.history.toApiJson() : this.history;\n }\n if (typeof this.created !== 'undefined' && this.created !== null) {\n toReturn['created'] = 'toApiJson' in this.created ? this.created.toApiJson() : this.created;\n }\n if (typeof this.modified !== 'undefined' && this.modified !== null) {\n toReturn['modified'] = 'toApiJson' in this.modified ? this.modified.toApiJson() : this.modified;\n }\n if (typeof this.completionDate !== 'undefined' && this.completionDate !== null) {\n toReturn['completionDate'] = 'toApiJson' in this.completionDate ? this.completionDate.toApiJson() : this.completionDate;\n }\n if (typeof this.subtasks !== 'undefined' && this.subtasks !== null) {\n toReturn['subtasks'] = 'toApiJson' in this.subtasks ? this.subtasks.toApiJson() : this.subtasks;\n }\n if (typeof this.taskType !== 'undefined') {\n toReturn['taskType'] = this.taskType;\n }\n if (typeof this.data !== 'undefined' && this.data !== null) {\n toReturn['data'] = 'toApiJson' in this.data ? this.data.toApiJson() : this.data;\n }\n if (typeof this.metadata !== 'undefined' && this.metadata !== null) {\n toReturn['metadata'] = 'toApiJson' in this.metadata ? this.metadata.toApiJson() : this.metadata;\n }\n if (typeof this.conversations !== 'undefined' && this.conversations !== null) {\n toReturn['conversations'] = 'toApiJson' in this.conversations ? this.conversations.toApiJson() : this.conversations;\n }\n if (typeof this.deleted !== 'undefined' && this.deleted !== null) {\n toReturn['deleted'] = 'toApiJson' in this.deleted ? this.deleted.toApiJson() : this.deleted;\n }\n if (typeof this.attachment !== 'undefined' && this.attachment !== null) {\n toReturn['attachment'] = 'toApiJson' in this.attachment ? this.attachment.toApiJson() : this.attachment;\n }\n if (typeof this.customTags !== 'undefined') {\n toReturn['customTags'] = this.customTags;\n }\n return toReturn;\n }\n}\nclass TaskIdentity {\n static fromProto(proto) {\n let m = new TaskIdentity();\n m = Object.assign(m, proto);\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.namespace !== 'undefined') {\n toReturn['namespace'] = this.namespace;\n }\n if (typeof this.parentPath !== 'undefined') {\n toReturn['parentPath'] = this.parentPath;\n }\n if (typeof this.taskId !== 'undefined') {\n toReturn['taskId'] = this.taskId;\n }\n return toReturn;\n }\n}\nclass TaskTree {\n static fromProto(proto) {\n let m = new TaskTree();\n m = Object.assign(m, proto);\n if (proto.version) {\n m.version = parseInt(proto.version, 10);\n }\n if (proto.identity) {\n m.identity = TaskIdentity.fromProto(proto.identity);\n }\n if (proto.dueDate) {\n m.dueDate = new Date(proto.dueDate);\n }\n if (proto.history) {\n m.history = proto.history.map(History.fromProto);\n }\n if (proto.created) {\n m.created = new Date(proto.created);\n }\n if (proto.modified) {\n m.modified = new Date(proto.modified);\n }\n if (proto.completionDate) {\n m.completionDate = new Date(proto.completionDate);\n }\n if (proto.subtasks) {\n m.subtasks = proto.subtasks.map(TaskTree.fromProto);\n }\n if (proto.data) {\n m.data = KeyValues.fromProto(proto.data);\n }\n if (proto.metadata) {\n m.metadata = KeyValues.fromProto(proto.metadata);\n }\n if (proto.conversations) {\n m.conversations = proto.conversations.map(Conversation.fromProto);\n }\n if (proto.deleted) {\n m.deleted = new Date(proto.deleted);\n }\n if (proto.attachment) {\n m.attachment = proto.attachment.map(Attachment.fromProto);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.version !== 'undefined') {\n toReturn['version'] = this.version;\n }\n if (typeof this.identity !== 'undefined' && this.identity !== null) {\n toReturn['identity'] = 'toApiJson' in this.identity ? this.identity.toApiJson() : this.identity;\n }\n if (typeof this.title !== 'undefined') {\n toReturn['title'] = this.title;\n }\n if (typeof this.status !== 'undefined') {\n toReturn['status'] = this.status;\n }\n if (typeof this.dueDate !== 'undefined' && this.dueDate !== null) {\n toReturn['dueDate'] = 'toApiJson' in this.dueDate ? this.dueDate.toApiJson() : this.dueDate;\n }\n if (typeof this.assignees !== 'undefined') {\n toReturn['assignees'] = this.assignees;\n }\n if (typeof this.notes !== 'undefined') {\n toReturn['notes'] = this.notes;\n }\n if (typeof this.description !== 'undefined') {\n toReturn['description'] = this.description;\n }\n if (typeof this.tags !== 'undefined') {\n toReturn['tags'] = this.tags;\n }\n if (typeof this.history !== 'undefined' && this.history !== null) {\n toReturn['history'] = 'toApiJson' in this.history ? this.history.toApiJson() : this.history;\n }\n if (typeof this.created !== 'undefined' && this.created !== null) {\n toReturn['created'] = 'toApiJson' in this.created ? this.created.toApiJson() : this.created;\n }\n if (typeof this.modified !== 'undefined' && this.modified !== null) {\n toReturn['modified'] = 'toApiJson' in this.modified ? this.modified.toApiJson() : this.modified;\n }\n if (typeof this.completionDate !== 'undefined' && this.completionDate !== null) {\n toReturn['completionDate'] = 'toApiJson' in this.completionDate ? this.completionDate.toApiJson() : this.completionDate;\n }\n if (typeof this.subtasks !== 'undefined' && this.subtasks !== null) {\n toReturn['subtasks'] = 'toApiJson' in this.subtasks ? this.subtasks.toApiJson() : this.subtasks;\n }\n if (typeof this.taskType !== 'undefined') {\n toReturn['taskType'] = this.taskType;\n }\n if (typeof this.data !== 'undefined' && this.data !== null) {\n toReturn['data'] = 'toApiJson' in this.data ? this.data.toApiJson() : this.data;\n }\n if (typeof this.metadata !== 'undefined' && this.metadata !== null) {\n toReturn['metadata'] = 'toApiJson' in this.metadata ? this.metadata.toApiJson() : this.metadata;\n }\n if (typeof this.conversations !== 'undefined' && this.conversations !== null) {\n toReturn['conversations'] = 'toApiJson' in this.conversations ? this.conversations.toApiJson() : this.conversations;\n }\n if (typeof this.deleted !== 'undefined' && this.deleted !== null) {\n toReturn['deleted'] = 'toApiJson' in this.deleted ? this.deleted.toApiJson() : this.deleted;\n }\n if (typeof this.attachment !== 'undefined' && this.attachment !== null) {\n toReturn['attachment'] = 'toApiJson' in this.attachment ? this.attachment.toApiJson() : this.attachment;\n }\n if (typeof this.customTags !== 'undefined') {\n toReturn['customTags'] = this.customTags;\n }\n return toReturn;\n }\n}\nclass KeyValuesKeyValueValue {\n static fromProto(proto) {\n let m = new KeyValuesKeyValueValue();\n m = Object.assign(m, proto);\n if (proto.int64Value) {\n m.int64Value = parseInt(proto.int64Value, 10);\n }\n if (proto.timeValue) {\n m.timeValue = new Date(proto.timeValue);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.stringValue !== 'undefined') {\n toReturn['stringValue'] = this.stringValue;\n }\n if (typeof this.int64Value !== 'undefined') {\n toReturn['int64Value'] = this.int64Value;\n }\n if (typeof this.boolValue !== 'undefined') {\n toReturn['boolValue'] = this.boolValue;\n }\n if (typeof this.doubleValue !== 'undefined') {\n toReturn['doubleValue'] = this.doubleValue;\n }\n if (typeof this.timeValue !== 'undefined' && this.timeValue !== null) {\n toReturn['timeValue'] = 'toApiJson' in this.timeValue ? this.timeValue.toApiJson() : this.timeValue;\n }\n if (typeof this.type !== 'undefined') {\n toReturn['type'] = this.type;\n }\n return toReturn;\n }\n}\nfunction enumStringToValue$m(enumRef, value) {\n if (typeof value === 'number') {\n return value;\n }\n return enumRef[value];\n}\nclass AddAssigneeRequest {\n static fromProto(proto) {\n let m = new AddAssigneeRequest();\n m = Object.assign(m, proto);\n if (proto.version) {\n m.version = parseInt(proto.version, 10);\n }\n if (proto.identity) {\n m.identity = TaskIdentity.fromProto(proto.identity);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.version !== 'undefined') {\n toReturn['version'] = this.version;\n }\n if (typeof this.identity !== 'undefined' && this.identity !== null) {\n toReturn['identity'] = 'toApiJson' in this.identity ? this.identity.toApiJson() : this.identity;\n }\n if (typeof this.assignee !== 'undefined') {\n toReturn['assignee'] = this.assignee;\n }\n if (typeof this.callerSubjectId !== 'undefined') {\n toReturn['callerSubjectId'] = this.callerSubjectId;\n }\n return toReturn;\n }\n}\nclass AddAttachmentRequest {\n static fromProto(proto) {\n let m = new AddAttachmentRequest();\n m = Object.assign(m, proto);\n if (proto.version) {\n m.version = parseInt(proto.version, 10);\n }\n if (proto.identity) {\n m.identity = TaskIdentity.fromProto(proto.identity);\n }\n if (proto.attachment) {\n m.attachment = Attachment.fromProto(proto.attachment);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.version !== 'undefined') {\n toReturn['version'] = this.version;\n }\n if (typeof this.identity !== 'undefined' && this.identity !== null) {\n toReturn['identity'] = 'toApiJson' in this.identity ? this.identity.toApiJson() : this.identity;\n }\n if (typeof this.attachment !== 'undefined' && this.attachment !== null) {\n toReturn['attachment'] = 'toApiJson' in this.attachment ? this.attachment.toApiJson() : this.attachment;\n }\n if (typeof this.callerSubjectId !== 'undefined') {\n toReturn['callerSubjectId'] = this.callerSubjectId;\n }\n return toReturn;\n }\n}\nclass AddConversationRequest {\n static fromProto(proto) {\n let m = new AddConversationRequest();\n m = Object.assign(m, proto);\n if (proto.version) {\n m.version = parseInt(proto.version, 10);\n }\n if (proto.identity) {\n m.identity = TaskIdentity.fromProto(proto.identity);\n }\n if (proto.persona) {\n m.persona = enumStringToValue$m(PersonaType, proto.persona);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.version !== 'undefined') {\n toReturn['version'] = this.version;\n }\n if (typeof this.identity !== 'undefined' && this.identity !== null) {\n toReturn['identity'] = 'toApiJson' in this.identity ? this.identity.toApiJson() : this.identity;\n }\n if (typeof this.message !== 'undefined') {\n toReturn['message'] = this.message;\n }\n if (typeof this.sendFrom !== 'undefined') {\n toReturn['sendFrom'] = this.sendFrom;\n }\n if (typeof this.sendTo !== 'undefined') {\n toReturn['sendTo'] = this.sendTo;\n }\n if (typeof this.source !== 'undefined') {\n toReturn['source'] = this.source;\n }\n if (typeof this.callerSubjectId !== 'undefined') {\n toReturn['callerSubjectId'] = this.callerSubjectId;\n }\n if (typeof this.isPublic !== 'undefined') {\n toReturn['isPublic'] = this.isPublic;\n }\n if (typeof this.persona !== 'undefined') {\n toReturn['persona'] = this.persona;\n }\n return toReturn;\n }\n}\nclass AddCustomTagsRequest {\n static fromProto(proto) {\n let m = new AddCustomTagsRequest();\n m = Object.assign(m, proto);\n if (proto.version) {\n m.version = parseInt(proto.version, 10);\n }\n if (proto.identity) {\n m.identity = TaskIdentity.fromProto(proto.identity);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.version !== 'undefined') {\n toReturn['version'] = this.version;\n }\n if (typeof this.identity !== 'undefined' && this.identity !== null) {\n toReturn['identity'] = 'toApiJson' in this.identity ? this.identity.toApiJson() : this.identity;\n }\n if (typeof this.customTags !== 'undefined') {\n toReturn['customTags'] = this.customTags;\n }\n if (typeof this.callerSubjectId !== 'undefined') {\n toReturn['callerSubjectId'] = this.callerSubjectId;\n }\n return toReturn;\n }\n}\nclass AddHistoryRequest {\n static fromProto(proto) {\n let m = new AddHistoryRequest();\n m = Object.assign(m, proto);\n if (proto.version) {\n m.version = parseInt(proto.version, 10);\n }\n if (proto.identity) {\n m.identity = TaskIdentity.fromProto(proto.identity);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.version !== 'undefined') {\n toReturn['version'] = this.version;\n }\n if (typeof this.identity !== 'undefined' && this.identity !== null) {\n toReturn['identity'] = 'toApiJson' in this.identity ? this.identity.toApiJson() : this.identity;\n }\n if (typeof this.message !== 'undefined') {\n toReturn['message'] = this.message;\n }\n if (typeof this.callerSubjectId !== 'undefined') {\n toReturn['callerSubjectId'] = this.callerSubjectId;\n }\n return toReturn;\n }\n}\nclass AddMultiAssigneeRequest {\n static fromProto(proto) {\n let m = new AddMultiAssigneeRequest();\n m = Object.assign(m, proto);\n if (proto.addRequests) {\n m.addRequests = proto.addRequests.map(AddAssigneeRequest.fromProto);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.addRequests !== 'undefined' && this.addRequests !== null) {\n toReturn['addRequests'] = 'toApiJson' in this.addRequests ? this.addRequests.toApiJson() : this.addRequests;\n }\n return toReturn;\n }\n}\nclass AddMultipleSubtasksRequest {\n static fromProto(proto) {\n let m = new AddMultipleSubtasksRequest();\n m = Object.assign(m, proto);\n if (proto.version) {\n m.version = parseInt(proto.version, 10);\n }\n if (proto.subtaskRequests) {\n m.subtaskRequests = proto.subtaskRequests.map(AddSubtaskRequest.fromProto);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.version !== 'undefined') {\n toReturn['version'] = this.version;\n }\n if (typeof this.subtaskRequests !== 'undefined' && this.subtaskRequests !== null) {\n toReturn['subtaskRequests'] = 'toApiJson' in this.subtaskRequests ? this.subtaskRequests.toApiJson() : this.subtaskRequests;\n }\n return toReturn;\n }\n}\nclass AddSubtaskRequest {\n static fromProto(proto) {\n let m = new AddSubtaskRequest();\n m = Object.assign(m, proto);\n if (proto.version) {\n m.version = parseInt(proto.version, 10);\n }\n if (proto.identity) {\n m.identity = TaskIdentity.fromProto(proto.identity);\n }\n if (proto.dueDate) {\n m.dueDate = new Date(proto.dueDate);\n }\n if (proto.data) {\n m.data = KeyValues.fromProto(proto.data);\n }\n if (proto.metadata) {\n m.metadata = KeyValues.fromProto(proto.metadata);\n }\n if (proto.attachments) {\n m.attachments = proto.attachments.map(Attachment.fromProto);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.version !== 'undefined') {\n toReturn['version'] = this.version;\n }\n if (typeof this.identity !== 'undefined' && this.identity !== null) {\n toReturn['identity'] = 'toApiJson' in this.identity ? this.identity.toApiJson() : this.identity;\n }\n if (typeof this.taskId !== 'undefined') {\n toReturn['taskId'] = this.taskId;\n }\n if (typeof this.title !== 'undefined') {\n toReturn['title'] = this.title;\n }\n if (typeof this.status !== 'undefined') {\n toReturn['status'] = this.status;\n }\n if (typeof this.dueDate !== 'undefined' && this.dueDate !== null) {\n toReturn['dueDate'] = 'toApiJson' in this.dueDate ? this.dueDate.toApiJson() : this.dueDate;\n }\n if (typeof this.assignees !== 'undefined') {\n toReturn['assignees'] = this.assignees;\n }\n if (typeof this.description !== 'undefined') {\n toReturn['description'] = this.description;\n }\n if (typeof this.tags !== 'undefined') {\n toReturn['tags'] = this.tags;\n }\n if (typeof this.notes !== 'undefined') {\n toReturn['notes'] = this.notes;\n }\n if (typeof this.taskType !== 'undefined') {\n toReturn['taskType'] = this.taskType;\n }\n if (typeof this.data !== 'undefined' && this.data !== null) {\n toReturn['data'] = 'toApiJson' in this.data ? this.data.toApiJson() : this.data;\n }\n if (typeof this.metadata !== 'undefined' && this.metadata !== null) {\n toReturn['metadata'] = 'toApiJson' in this.metadata ? this.metadata.toApiJson() : this.metadata;\n }\n if (typeof this.attachments !== 'undefined' && this.attachments !== null) {\n toReturn['attachments'] = 'toApiJson' in this.attachments ? this.attachments.toApiJson() : this.attachments;\n }\n if (typeof this.customTags !== 'undefined') {\n toReturn['customTags'] = this.customTags;\n }\n if (typeof this.callerSubjectId !== 'undefined') {\n toReturn['callerSubjectId'] = this.callerSubjectId;\n }\n return toReturn;\n }\n}\nclass AddTagsRequest {\n static fromProto(proto) {\n let m = new AddTagsRequest();\n m = Object.assign(m, proto);\n if (proto.version) {\n m.version = parseInt(proto.version, 10);\n }\n if (proto.identity) {\n m.identity = TaskIdentity.fromProto(proto.identity);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.version !== 'undefined') {\n toReturn['version'] = this.version;\n }\n if (typeof this.identity !== 'undefined' && this.identity !== null) {\n toReturn['identity'] = 'toApiJson' in this.identity ? this.identity.toApiJson() : this.identity;\n }\n if (typeof this.tags !== 'undefined') {\n toReturn['tags'] = this.tags;\n }\n if (typeof this.callerSubjectId !== 'undefined') {\n toReturn['callerSubjectId'] = this.callerSubjectId;\n }\n return toReturn;\n }\n}\nclass CommandResponse {\n static fromProto(proto) {\n let m = new CommandResponse();\n m = Object.assign(m, proto);\n if (proto.version) {\n m.version = parseInt(proto.version, 10);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.version !== 'undefined') {\n toReturn['version'] = this.version;\n }\n return toReturn;\n }\n}\nclass CountMetricResponse {\n static fromProto(proto) {\n let m = new CountMetricResponse();\n m = Object.assign(m, proto);\n if (proto.count) {\n m.count = parseInt(proto.count, 10);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.key !== 'undefined') {\n toReturn['key'] = this.key;\n }\n if (typeof this.count !== 'undefined') {\n toReturn['count'] = this.count;\n }\n return toReturn;\n }\n}\nclass DeleteMultiTaskRequest {\n static fromProto(proto) {\n let m = new DeleteMultiTaskRequest();\n m = Object.assign(m, proto);\n if (proto.deleteRequests) {\n m.deleteRequests = proto.deleteRequests.map(DeleteTaskRequest.fromProto);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.deleteRequests !== 'undefined' && this.deleteRequests !== null) {\n toReturn['deleteRequests'] = 'toApiJson' in this.deleteRequests ? this.deleteRequests.toApiJson() : this.deleteRequests;\n }\n return toReturn;\n }\n}\nclass DeleteTaskRequest {\n static fromProto(proto) {\n let m = new DeleteTaskRequest();\n m = Object.assign(m, proto);\n if (proto.version) {\n m.version = parseInt(proto.version, 10);\n }\n if (proto.identity) {\n m.identity = TaskIdentity.fromProto(proto.identity);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.version !== 'undefined') {\n toReturn['version'] = this.version;\n }\n if (typeof this.identity !== 'undefined' && this.identity !== null) {\n toReturn['identity'] = 'toApiJson' in this.identity ? this.identity.toApiJson() : this.identity;\n }\n if (typeof this.callerSubjectId !== 'undefined') {\n toReturn['callerSubjectId'] = this.callerSubjectId;\n }\n return toReturn;\n }\n}\nclass MultiCommandRequestEvent {\n static fromProto(proto) {\n let m = new MultiCommandRequestEvent();\n m = Object.assign(m, proto);\n if (proto.generate) {\n m.generate = GenerateTaskRequest.fromProto(proto.generate);\n }\n if (proto.addSubtask) {\n m.addSubtask = AddSubtaskRequest.fromProto(proto.addSubtask);\n }\n if (proto.setTitle) {\n m.setTitle = SetTitleRequest.fromProto(proto.setTitle);\n }\n if (proto.setType) {\n m.setType = SetTypeRequest.fromProto(proto.setType);\n }\n if (proto.addAssignee) {\n m.addAssignee = AddAssigneeRequest.fromProto(proto.addAssignee);\n }\n if (proto.removeAssignee) {\n m.removeAssignee = RemoveAssigneeRequest.fromProto(proto.removeAssignee);\n }\n if (proto.setDueDate) {\n m.setDueDate = SetDueDateRequest.fromProto(proto.setDueDate);\n }\n if (proto.setStatus) {\n m.setStatus = SetStatusRequest.fromProto(proto.setStatus);\n }\n if (proto.setKeyValue) {\n m.setKeyValue = SetKeyValue.fromProto(proto.setKeyValue);\n }\n if (proto.addHistory) {\n m.addHistory = AddHistoryRequest.fromProto(proto.addHistory);\n }\n if (proto.addConversation) {\n m.addConversation = AddConversationRequest.fromProto(proto.addConversation);\n }\n if (proto.addTags) {\n m.addTags = AddTagsRequest.fromProto(proto.addTags);\n }\n if (proto.removeTags) {\n m.removeTags = RemoveTagsRequest.fromProto(proto.removeTags);\n }\n if (proto.setNotes) {\n m.setNotes = SetNotesRequest.fromProto(proto.setNotes);\n }\n if (proto.setDescription) {\n m.setDescription = SetDescriptionRequest.fromProto(proto.setDescription);\n }\n if (proto.delete) {\n m.delete = DeleteTaskRequest.fromProto(proto.delete);\n }\n if (proto.restore) {\n m.restore = RestoreTaskRequest.fromProto(proto.restore);\n }\n if (proto.reorder) {\n m.reorder = ReorderSubtaskRequest.fromProto(proto.reorder);\n }\n if (proto.addAttachment) {\n m.addAttachment = AddAttachmentRequest.fromProto(proto.addAttachment);\n }\n if (proto.removeAttachment) {\n m.removeAttachment = RemoveAttachmentRequest.fromProto(proto.removeAttachment);\n }\n if (proto.addCustomTags) {\n m.addCustomTags = AddCustomTagsRequest.fromProto(proto.addCustomTags);\n }\n if (proto.removeCustomTags) {\n m.removeCustomTags = RemoveCustomTagsRequest.fromProto(proto.removeCustomTags);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.generate !== 'undefined' && this.generate !== null) {\n toReturn['generate'] = 'toApiJson' in this.generate ? this.generate.toApiJson() : this.generate;\n }\n if (typeof this.addSubtask !== 'undefined' && this.addSubtask !== null) {\n toReturn['addSubtask'] = 'toApiJson' in this.addSubtask ? this.addSubtask.toApiJson() : this.addSubtask;\n }\n if (typeof this.setTitle !== 'undefined' && this.setTitle !== null) {\n toReturn['setTitle'] = 'toApiJson' in this.setTitle ? this.setTitle.toApiJson() : this.setTitle;\n }\n if (typeof this.setType !== 'undefined' && this.setType !== null) {\n toReturn['setType'] = 'toApiJson' in this.setType ? this.setType.toApiJson() : this.setType;\n }\n if (typeof this.addAssignee !== 'undefined' && this.addAssignee !== null) {\n toReturn['addAssignee'] = 'toApiJson' in this.addAssignee ? this.addAssignee.toApiJson() : this.addAssignee;\n }\n if (typeof this.removeAssignee !== 'undefined' && this.removeAssignee !== null) {\n toReturn['removeAssignee'] = 'toApiJson' in this.removeAssignee ? this.removeAssignee.toApiJson() : this.removeAssignee;\n }\n if (typeof this.setDueDate !== 'undefined' && this.setDueDate !== null) {\n toReturn['setDueDate'] = 'toApiJson' in this.setDueDate ? this.setDueDate.toApiJson() : this.setDueDate;\n }\n if (typeof this.setStatus !== 'undefined' && this.setStatus !== null) {\n toReturn['setStatus'] = 'toApiJson' in this.setStatus ? this.setStatus.toApiJson() : this.setStatus;\n }\n if (typeof this.setKeyValue !== 'undefined' && this.setKeyValue !== null) {\n toReturn['setKeyValue'] = 'toApiJson' in this.setKeyValue ? this.setKeyValue.toApiJson() : this.setKeyValue;\n }\n if (typeof this.addHistory !== 'undefined' && this.addHistory !== null) {\n toReturn['addHistory'] = 'toApiJson' in this.addHistory ? this.addHistory.toApiJson() : this.addHistory;\n }\n if (typeof this.addConversation !== 'undefined' && this.addConversation !== null) {\n toReturn['addConversation'] = 'toApiJson' in this.addConversation ? this.addConversation.toApiJson() : this.addConversation;\n }\n if (typeof this.addTags !== 'undefined' && this.addTags !== null) {\n toReturn['addTags'] = 'toApiJson' in this.addTags ? this.addTags.toApiJson() : this.addTags;\n }\n if (typeof this.removeTags !== 'undefined' && this.removeTags !== null) {\n toReturn['removeTags'] = 'toApiJson' in this.removeTags ? this.removeTags.toApiJson() : this.removeTags;\n }\n if (typeof this.setNotes !== 'undefined' && this.setNotes !== null) {\n toReturn['setNotes'] = 'toApiJson' in this.setNotes ? this.setNotes.toApiJson() : this.setNotes;\n }\n if (typeof this.setDescription !== 'undefined' && this.setDescription !== null) {\n toReturn['setDescription'] = 'toApiJson' in this.setDescription ? this.setDescription.toApiJson() : this.setDescription;\n }\n if (typeof this.delete !== 'undefined' && this.delete !== null) {\n toReturn['delete'] = 'toApiJson' in this.delete ? this.delete.toApiJson() : this.delete;\n }\n if (typeof this.restore !== 'undefined' && this.restore !== null) {\n toReturn['restore'] = 'toApiJson' in this.restore ? this.restore.toApiJson() : this.restore;\n }\n if (typeof this.reorder !== 'undefined' && this.reorder !== null) {\n toReturn['reorder'] = 'toApiJson' in this.reorder ? this.reorder.toApiJson() : this.reorder;\n }\n if (typeof this.addAttachment !== 'undefined' && this.addAttachment !== null) {\n toReturn['addAttachment'] = 'toApiJson' in this.addAttachment ? this.addAttachment.toApiJson() : this.addAttachment;\n }\n if (typeof this.removeAttachment !== 'undefined' && this.removeAttachment !== null) {\n toReturn['removeAttachment'] = 'toApiJson' in this.removeAttachment ? this.removeAttachment.toApiJson() : this.removeAttachment;\n }\n if (typeof this.addCustomTags !== 'undefined' && this.addCustomTags !== null) {\n toReturn['addCustomTags'] = 'toApiJson' in this.addCustomTags ? this.addCustomTags.toApiJson() : this.addCustomTags;\n }\n if (typeof this.removeCustomTags !== 'undefined' && this.removeCustomTags !== null) {\n toReturn['removeCustomTags'] = 'toApiJson' in this.removeCustomTags ? this.removeCustomTags.toApiJson() : this.removeCustomTags;\n }\n return toReturn;\n }\n}\nclass GenerateTaskRequest {\n static fromProto(proto) {\n let m = new GenerateTaskRequest();\n m = Object.assign(m, proto);\n if (proto.dueDate) {\n m.dueDate = new Date(proto.dueDate);\n }\n if (proto.data) {\n m.data = KeyValues.fromProto(proto.data);\n }\n if (proto.metadata) {\n m.metadata = KeyValues.fromProto(proto.metadata);\n }\n if (proto.attachments) {\n m.attachments = proto.attachments.map(Attachment.fromProto);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.namespace !== 'undefined') {\n toReturn['namespace'] = this.namespace;\n }\n if (typeof this.taskId !== 'undefined') {\n toReturn['taskId'] = this.taskId;\n }\n if (typeof this.title !== 'undefined') {\n toReturn['title'] = this.title;\n }\n if (typeof this.status !== 'undefined') {\n toReturn['status'] = this.status;\n }\n if (typeof this.dueDate !== 'undefined' && this.dueDate !== null) {\n toReturn['dueDate'] = 'toApiJson' in this.dueDate ? this.dueDate.toApiJson() : this.dueDate;\n }\n if (typeof this.assignees !== 'undefined') {\n toReturn['assignees'] = this.assignees;\n }\n if (typeof this.description !== 'undefined') {\n toReturn['description'] = this.description;\n }\n if (typeof this.tags !== 'undefined') {\n toReturn['tags'] = this.tags;\n }\n if (typeof this.notes !== 'undefined') {\n toReturn['notes'] = this.notes;\n }\n if (typeof this.taskType !== 'undefined') {\n toReturn['taskType'] = this.taskType;\n }\n if (typeof this.data !== 'undefined' && this.data !== null) {\n toReturn['data'] = 'toApiJson' in this.data ? this.data.toApiJson() : this.data;\n }\n if (typeof this.metadata !== 'undefined' && this.metadata !== null) {\n toReturn['metadata'] = 'toApiJson' in this.metadata ? this.metadata.toApiJson() : this.metadata;\n }\n if (typeof this.attachments !== 'undefined' && this.attachments !== null) {\n toReturn['attachments'] = 'toApiJson' in this.attachments ? this.attachments.toApiJson() : this.attachments;\n }\n if (typeof this.customTags !== 'undefined') {\n toReturn['customTags'] = this.customTags;\n }\n if (typeof this.callerSubjectId !== 'undefined') {\n toReturn['callerSubjectId'] = this.callerSubjectId;\n }\n return toReturn;\n }\n}\nclass GetMetricsFilters {\n static fromProto(proto) {\n let m = new GetMetricsFilters();\n m = Object.assign(m, proto);\n if (proto.rangeStart) {\n m.rangeStart = new Date(proto.rangeStart);\n }\n if (proto.rangeEnd) {\n m.rangeEnd = new Date(proto.rangeEnd);\n }\n if (proto.metadata) {\n m.metadata = KeyValues.fromProto(proto.metadata);\n }\n if (proto.dateRangeField) {\n m.dateRangeField = enumStringToValue$m(RangeField, proto.dateRangeField);\n }\n if (proto.metadataGroups) {\n m.metadataGroups = GroupedMetadata.fromProto(proto.metadataGroups);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.namespace !== 'undefined') {\n toReturn['namespace'] = this.namespace;\n }\n if (typeof this.parentPathFuzzy !== 'undefined') {\n toReturn['parentPathFuzzy'] = this.parentPathFuzzy;\n }\n if (typeof this.parentPathExact !== 'undefined') {\n toReturn['parentPathExact'] = this.parentPathExact;\n }\n if (typeof this.titleFuzzy !== 'undefined') {\n toReturn['titleFuzzy'] = this.titleFuzzy;\n }\n if (typeof this.titleExact !== 'undefined') {\n toReturn['titleExact'] = this.titleExact;\n }\n if (typeof this.assignees !== 'undefined') {\n toReturn['assignees'] = this.assignees;\n }\n if (typeof this.rangeStart !== 'undefined' && this.rangeStart !== null) {\n toReturn['rangeStart'] = 'toApiJson' in this.rangeStart ? this.rangeStart.toApiJson() : this.rangeStart;\n }\n if (typeof this.rangeEnd !== 'undefined' && this.rangeEnd !== null) {\n toReturn['rangeEnd'] = 'toApiJson' in this.rangeEnd ? this.rangeEnd.toApiJson() : this.rangeEnd;\n }\n if (typeof this.types !== 'undefined') {\n toReturn['types'] = this.types;\n }\n if (typeof this.status !== 'undefined') {\n toReturn['status'] = this.status;\n }\n if (typeof this.tags !== 'undefined') {\n toReturn['tags'] = this.tags;\n }\n if (typeof this.metadata !== 'undefined' && this.metadata !== null) {\n toReturn['metadata'] = 'toApiJson' in this.metadata ? this.metadata.toApiJson() : this.metadata;\n }\n if (typeof this.dateRangeField !== 'undefined') {\n toReturn['dateRangeField'] = this.dateRangeField;\n }\n if (typeof this.access !== 'undefined') {\n toReturn['access'] = this.access;\n }\n if (typeof this.metadataGroups !== 'undefined' && this.metadataGroups !== null) {\n toReturn['metadataGroups'] = 'toApiJson' in this.metadataGroups ? this.metadataGroups.toApiJson() : this.metadataGroups;\n }\n return toReturn;\n }\n}\nclass GetMetricsRequest {\n static fromProto(proto) {\n let m = new GetMetricsRequest();\n m = Object.assign(m, proto);\n if (proto.requests) {\n m.requests = proto.requests.map(GetMetricsRequestMetricRequest.fromProto);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.requests !== 'undefined' && this.requests !== null) {\n toReturn['requests'] = 'toApiJson' in this.requests ? this.requests.toApiJson() : this.requests;\n }\n return toReturn;\n }\n}\nclass GetMetricsResponse {\n static fromProto(proto) {\n let m = new GetMetricsResponse();\n m = Object.assign(m, proto);\n if (proto.metrics) {\n m.metrics = proto.metrics.map(v => enumStringToValue$m(Metric, v));\n }\n if (proto.responses) {\n m.responses = proto.responses.map(MetricResponses.fromProto);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.metrics !== 'undefined') {\n toReturn['metrics'] = this.metrics;\n }\n if (typeof this.responses !== 'undefined' && this.responses !== null) {\n toReturn['responses'] = 'toApiJson' in this.responses ? this.responses.toApiJson() : this.responses;\n }\n if (typeof this.names !== 'undefined') {\n toReturn['names'] = this.names;\n }\n return toReturn;\n }\n}\nclass GetTaskRequest {\n static fromProto(proto) {\n let m = new GetTaskRequest();\n m = Object.assign(m, proto);\n if (proto.identity) {\n m.identity = TaskIdentity.fromProto(proto.identity);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.identity !== 'undefined' && this.identity !== null) {\n toReturn['identity'] = 'toApiJson' in this.identity ? this.identity.toApiJson() : this.identity;\n }\n if (typeof this.returnDeleted !== 'undefined') {\n toReturn['returnDeleted'] = this.returnDeleted;\n }\n return toReturn;\n }\n}\nclass GetTaskResponse {\n static fromProto(proto) {\n let m = new GetTaskResponse();\n m = Object.assign(m, proto);\n if (proto.task) {\n m.task = Task.fromProto(proto.task);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.task !== 'undefined' && this.task !== null) {\n toReturn['task'] = 'toApiJson' in this.task ? this.task.toApiJson() : this.task;\n }\n return toReturn;\n }\n}\nclass GetTasksRequest {\n static fromProto(proto) {\n let m = new GetTasksRequest();\n m = Object.assign(m, proto);\n if (proto.identities) {\n m.identities = proto.identities.map(TaskIdentity.fromProto);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.identities !== 'undefined' && this.identities !== null) {\n toReturn['identities'] = 'toApiJson' in this.identities ? this.identities.toApiJson() : this.identities;\n }\n if (typeof this.returnDeleted !== 'undefined') {\n toReturn['returnDeleted'] = this.returnDeleted;\n }\n if (typeof this.excludeDeleted !== 'undefined') {\n toReturn['excludeDeleted'] = this.excludeDeleted;\n }\n return toReturn;\n }\n}\nclass GetTasksResponse {\n static fromProto(proto) {\n let m = new GetTasksResponse();\n m = Object.assign(m, proto);\n if (proto.tasks) {\n m.tasks = proto.tasks.map(Task.fromProto);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.tasks !== 'undefined' && this.tasks !== null) {\n toReturn['tasks'] = 'toApiJson' in this.tasks ? this.tasks.toApiJson() : this.tasks;\n }\n return toReturn;\n }\n}\nclass GetTreeRequest {\n static fromProto(proto) {\n let m = new GetTreeRequest();\n m = Object.assign(m, proto);\n if (proto.identity) {\n m.identity = TaskIdentity.fromProto(proto.identity);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.identity !== 'undefined' && this.identity !== null) {\n toReturn['identity'] = 'toApiJson' in this.identity ? this.identity.toApiJson() : this.identity;\n }\n return toReturn;\n }\n}\nclass GetTreeResponse {\n static fromProto(proto) {\n let m = new GetTreeResponse();\n m = Object.assign(m, proto);\n if (proto.tasks) {\n m.tasks = TaskTree.fromProto(proto.tasks);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.tasks !== 'undefined' && this.tasks !== null) {\n toReturn['tasks'] = 'toApiJson' in this.tasks ? this.tasks.toApiJson() : this.tasks;\n }\n return toReturn;\n }\n}\nclass GroupedMetadata {\n static fromProto(proto) {\n let m = new GroupedMetadata();\n m = Object.assign(m, proto);\n if (proto.metadataGroup) {\n m.metadataGroup = proto.metadataGroup.map(KeyValues.fromProto);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.metadataGroup !== 'undefined' && this.metadataGroup !== null) {\n toReturn['metadataGroup'] = 'toApiJson' in this.metadataGroup ? this.metadataGroup.toApiJson() : this.metadataGroup;\n }\n return toReturn;\n }\n}\nclass GroupedTags {\n static fromProto(proto) {\n let m = new GroupedTags();\n m = Object.assign(m, proto);\n if (proto.groups) {\n m.groups = proto.groups.map(TagGroup.fromProto);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.groups !== 'undefined' && this.groups !== null) {\n toReturn['groups'] = 'toApiJson' in this.groups ? this.groups.toApiJson() : this.groups;\n }\n return toReturn;\n }\n}\nclass GetMetricsRequestMetricRequest {\n static fromProto(proto) {\n let m = new GetMetricsRequestMetricRequest();\n m = Object.assign(m, proto);\n if (proto.metric) {\n m.metric = enumStringToValue$m(Metric, proto.metric);\n }\n if (proto.filters) {\n m.filters = GetMetricsFilters.fromProto(proto.filters);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.metric !== 'undefined') {\n toReturn['metric'] = this.metric;\n }\n if (typeof this.filters !== 'undefined' && this.filters !== null) {\n toReturn['filters'] = 'toApiJson' in this.filters ? this.filters.toApiJson() : this.filters;\n }\n if (typeof this.name !== 'undefined') {\n toReturn['name'] = this.name;\n }\n return toReturn;\n }\n}\nclass MetricResponsesMetricResponse {\n static fromProto(proto) {\n let m = new MetricResponsesMetricResponse();\n m = Object.assign(m, proto);\n if (proto.count) {\n m.count = CountMetricResponse.fromProto(proto.count);\n }\n if (proto.value) {\n m.value = ValueMetricResponse.fromProto(proto.value);\n }\n if (proto.subMetricResponses) {\n m.subMetricResponses = proto.subMetricResponses.map(MetricResponses.fromProto);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.count !== 'undefined' && this.count !== null) {\n toReturn['count'] = 'toApiJson' in this.count ? this.count.toApiJson() : this.count;\n }\n if (typeof this.value !== 'undefined' && this.value !== null) {\n toReturn['value'] = 'toApiJson' in this.value ? this.value.toApiJson() : this.value;\n }\n if (typeof this.subMetricResponses !== 'undefined' && this.subMetricResponses !== null) {\n toReturn['subMetricResponses'] = 'toApiJson' in this.subMetricResponses ? this.subMetricResponses.toApiJson() : this.subMetricResponses;\n }\n return toReturn;\n }\n}\nclass MetricResponses {\n static fromProto(proto) {\n let m = new MetricResponses();\n m = Object.assign(m, proto);\n if (proto.metricResponses) {\n m.metricResponses = proto.metricResponses.map(MetricResponsesMetricResponse.fromProto);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.metricResponses !== 'undefined' && this.metricResponses !== null) {\n toReturn['metricResponses'] = 'toApiJson' in this.metricResponses ? this.metricResponses.toApiJson() : this.metricResponses;\n }\n return toReturn;\n }\n}\nclass MultiCommandRequest {\n static fromProto(proto) {\n let m = new MultiCommandRequest();\n m = Object.assign(m, proto);\n if (proto.events) {\n m.events = proto.events.map(MultiCommandRequestEvent.fromProto);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.events !== 'undefined' && this.events !== null) {\n toReturn['events'] = 'toApiJson' in this.events ? this.events.toApiJson() : this.events;\n }\n if (typeof this.callerSubjectId !== 'undefined') {\n toReturn['callerSubjectId'] = this.callerSubjectId;\n }\n return toReturn;\n }\n}\nclass MultiCommandResponsesMultiCommandResponse {\n static fromProto(proto) {\n let m = new MultiCommandResponsesMultiCommandResponse();\n m = Object.assign(m, proto);\n if (proto.version) {\n m.version = parseInt(proto.version, 10);\n }\n if (proto.identity) {\n m.identity = TaskIdentity.fromProto(proto.identity);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.version !== 'undefined') {\n toReturn['version'] = this.version;\n }\n if (typeof this.identity !== 'undefined' && this.identity !== null) {\n toReturn['identity'] = 'toApiJson' in this.identity ? this.identity.toApiJson() : this.identity;\n }\n return toReturn;\n }\n}\nclass MultiCommandResponses {\n static fromProto(proto) {\n let m = new MultiCommandResponses();\n m = Object.assign(m, proto);\n if (proto.responses) {\n m.responses = proto.responses.map(MultiCommandResponsesMultiCommandResponse.fromProto);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.responses !== 'undefined' && this.responses !== null) {\n toReturn['responses'] = 'toApiJson' in this.responses ? this.responses.toApiJson() : this.responses;\n }\n return toReturn;\n }\n}\nclass MultiSearchTaskRequest {\n static fromProto(proto) {\n let m = new MultiSearchTaskRequest();\n m = Object.assign(m, proto);\n if (proto.searchRequests) {\n m.searchRequests = proto.searchRequests.map(SearchTaskRequest.fromProto);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.searchRequests !== 'undefined' && this.searchRequests !== null) {\n toReturn['searchRequests'] = 'toApiJson' in this.searchRequests ? this.searchRequests.toApiJson() : this.searchRequests;\n }\n return toReturn;\n }\n}\nclass RemoveAssigneeRequest {\n static fromProto(proto) {\n let m = new RemoveAssigneeRequest();\n m = Object.assign(m, proto);\n if (proto.version) {\n m.version = parseInt(proto.version, 10);\n }\n if (proto.identity) {\n m.identity = TaskIdentity.fromProto(proto.identity);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.version !== 'undefined') {\n toReturn['version'] = this.version;\n }\n if (typeof this.identity !== 'undefined' && this.identity !== null) {\n toReturn['identity'] = 'toApiJson' in this.identity ? this.identity.toApiJson() : this.identity;\n }\n if (typeof this.assignee !== 'undefined') {\n toReturn['assignee'] = this.assignee;\n }\n if (typeof this.callerSubjectId !== 'undefined') {\n toReturn['callerSubjectId'] = this.callerSubjectId;\n }\n return toReturn;\n }\n}\nclass RemoveAttachmentRequest {\n static fromProto(proto) {\n let m = new RemoveAttachmentRequest();\n m = Object.assign(m, proto);\n if (proto.version) {\n m.version = parseInt(proto.version, 10);\n }\n if (proto.identity) {\n m.identity = TaskIdentity.fromProto(proto.identity);\n }\n if (proto.attachment) {\n m.attachment = Attachment.fromProto(proto.attachment);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.version !== 'undefined') {\n toReturn['version'] = this.version;\n }\n if (typeof this.identity !== 'undefined' && this.identity !== null) {\n toReturn['identity'] = 'toApiJson' in this.identity ? this.identity.toApiJson() : this.identity;\n }\n if (typeof this.attachment !== 'undefined' && this.attachment !== null) {\n toReturn['attachment'] = 'toApiJson' in this.attachment ? this.attachment.toApiJson() : this.attachment;\n }\n if (typeof this.callerSubjectId !== 'undefined') {\n toReturn['callerSubjectId'] = this.callerSubjectId;\n }\n return toReturn;\n }\n}\nclass RemoveCustomTagsRequest {\n static fromProto(proto) {\n let m = new RemoveCustomTagsRequest();\n m = Object.assign(m, proto);\n if (proto.version) {\n m.version = parseInt(proto.version, 10);\n }\n if (proto.identity) {\n m.identity = TaskIdentity.fromProto(proto.identity);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.version !== 'undefined') {\n toReturn['version'] = this.version;\n }\n if (typeof this.identity !== 'undefined' && this.identity !== null) {\n toReturn['identity'] = 'toApiJson' in this.identity ? this.identity.toApiJson() : this.identity;\n }\n if (typeof this.customTags !== 'undefined') {\n toReturn['customTags'] = this.customTags;\n }\n if (typeof this.callerSubjectId !== 'undefined') {\n toReturn['callerSubjectId'] = this.callerSubjectId;\n }\n return toReturn;\n }\n}\nclass RemoveMultiAssigneeRequest {\n static fromProto(proto) {\n let m = new RemoveMultiAssigneeRequest();\n m = Object.assign(m, proto);\n if (proto.removeRequests) {\n m.removeRequests = proto.removeRequests.map(RemoveAssigneeRequest.fromProto);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.removeRequests !== 'undefined' && this.removeRequests !== null) {\n toReturn['removeRequests'] = 'toApiJson' in this.removeRequests ? this.removeRequests.toApiJson() : this.removeRequests;\n }\n return toReturn;\n }\n}\nclass RemoveTagsRequest {\n static fromProto(proto) {\n let m = new RemoveTagsRequest();\n m = Object.assign(m, proto);\n if (proto.version) {\n m.version = parseInt(proto.version, 10);\n }\n if (proto.identity) {\n m.identity = TaskIdentity.fromProto(proto.identity);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.version !== 'undefined') {\n toReturn['version'] = this.version;\n }\n if (typeof this.identity !== 'undefined' && this.identity !== null) {\n toReturn['identity'] = 'toApiJson' in this.identity ? this.identity.toApiJson() : this.identity;\n }\n if (typeof this.tags !== 'undefined') {\n toReturn['tags'] = this.tags;\n }\n if (typeof this.callerSubjectId !== 'undefined') {\n toReturn['callerSubjectId'] = this.callerSubjectId;\n }\n return toReturn;\n }\n}\nclass ReorderSubtaskRequest {\n static fromProto(proto) {\n let m = new ReorderSubtaskRequest();\n m = Object.assign(m, proto);\n if (proto.version) {\n m.version = parseInt(proto.version, 10);\n }\n if (proto.identity) {\n m.identity = TaskIdentity.fromProto(proto.identity);\n }\n if (proto.currentPosition) {\n m.currentPosition = parseInt(proto.currentPosition, 10);\n }\n if (proto.newPosition) {\n m.newPosition = parseInt(proto.newPosition, 10);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.version !== 'undefined') {\n toReturn['version'] = this.version;\n }\n if (typeof this.identity !== 'undefined' && this.identity !== null) {\n toReturn['identity'] = 'toApiJson' in this.identity ? this.identity.toApiJson() : this.identity;\n }\n if (typeof this.currentPosition !== 'undefined') {\n toReturn['currentPosition'] = this.currentPosition;\n }\n if (typeof this.newPosition !== 'undefined') {\n toReturn['newPosition'] = this.newPosition;\n }\n if (typeof this.callerSubjectId !== 'undefined') {\n toReturn['callerSubjectId'] = this.callerSubjectId;\n }\n return toReturn;\n }\n}\nclass RestoreMultiTaskRequest {\n static fromProto(proto) {\n let m = new RestoreMultiTaskRequest();\n m = Object.assign(m, proto);\n if (proto.restoreRequests) {\n m.restoreRequests = proto.restoreRequests.map(RestoreTaskRequest.fromProto);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.restoreRequests !== 'undefined' && this.restoreRequests !== null) {\n toReturn['restoreRequests'] = 'toApiJson' in this.restoreRequests ? this.restoreRequests.toApiJson() : this.restoreRequests;\n }\n return toReturn;\n }\n}\nclass RestoreTaskRequest {\n static fromProto(proto) {\n let m = new RestoreTaskRequest();\n m = Object.assign(m, proto);\n if (proto.version) {\n m.version = parseInt(proto.version, 10);\n }\n if (proto.identity) {\n m.identity = TaskIdentity.fromProto(proto.identity);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.version !== 'undefined') {\n toReturn['version'] = this.version;\n }\n if (typeof this.identity !== 'undefined' && this.identity !== null) {\n toReturn['identity'] = 'toApiJson' in this.identity ? this.identity.toApiJson() : this.identity;\n }\n if (typeof this.callerSubjectId !== 'undefined') {\n toReturn['callerSubjectId'] = this.callerSubjectId;\n }\n return toReturn;\n }\n}\nclass SearchTaskRequest {\n static fromProto(proto) {\n let m = new SearchTaskRequest();\n m = Object.assign(m, proto);\n if (proto.rangeStart) {\n m.rangeStart = new Date(proto.rangeStart);\n }\n if (proto.rangeEnd) {\n m.rangeEnd = new Date(proto.rangeEnd);\n }\n if (proto.metadata) {\n m.metadata = KeyValues.fromProto(proto.metadata);\n }\n if (proto.pageSize) {\n m.pageSize = parseInt(proto.pageSize, 10);\n }\n if (proto.sortDirection) {\n m.sortDirection = enumStringToValue$m(SortDirection, proto.sortDirection);\n }\n if (proto.dateRangeField) {\n m.dateRangeField = enumStringToValue$m(RangeField, proto.dateRangeField);\n }\n if (proto.sorts) {\n m.sorts = proto.sorts.map(Sort.fromProto);\n }\n if (proto.tagGroups) {\n m.tagGroups = GroupedTags.fromProto(proto.tagGroups);\n }\n if (proto.metadataGroups) {\n m.metadataGroups = GroupedMetadata.fromProto(proto.metadataGroups);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.namespace !== 'undefined') {\n toReturn['namespace'] = this.namespace;\n }\n if (typeof this.parentPathFuzzy !== 'undefined') {\n toReturn['parentPathFuzzy'] = this.parentPathFuzzy;\n }\n if (typeof this.parentPathExact !== 'undefined') {\n toReturn['parentPathExact'] = this.parentPathExact;\n }\n if (typeof this.titleFuzzy !== 'undefined') {\n toReturn['titleFuzzy'] = this.titleFuzzy;\n }\n if (typeof this.titleExact !== 'undefined') {\n toReturn['titleExact'] = this.titleExact;\n }\n if (typeof this.assignees !== 'undefined') {\n toReturn['assignees'] = this.assignees;\n }\n if (typeof this.rangeStart !== 'undefined' && this.rangeStart !== null) {\n toReturn['rangeStart'] = 'toApiJson' in this.rangeStart ? this.rangeStart.toApiJson() : this.rangeStart;\n }\n if (typeof this.rangeEnd !== 'undefined' && this.rangeEnd !== null) {\n toReturn['rangeEnd'] = 'toApiJson' in this.rangeEnd ? this.rangeEnd.toApiJson() : this.rangeEnd;\n }\n if (typeof this.types !== 'undefined') {\n toReturn['types'] = this.types;\n }\n if (typeof this.status !== 'undefined') {\n toReturn['status'] = this.status;\n }\n if (typeof this.tags !== 'undefined') {\n toReturn['tags'] = this.tags;\n }\n if (typeof this.metadata !== 'undefined' && this.metadata !== null) {\n toReturn['metadata'] = 'toApiJson' in this.metadata ? this.metadata.toApiJson() : this.metadata;\n }\n if (typeof this.cursor !== 'undefined') {\n toReturn['cursor'] = this.cursor;\n }\n if (typeof this.pageSize !== 'undefined') {\n toReturn['pageSize'] = this.pageSize;\n }\n if (typeof this.sortField !== 'undefined') {\n toReturn['sortField'] = this.sortField;\n }\n if (typeof this.sortDirection !== 'undefined') {\n toReturn['sortDirection'] = this.sortDirection;\n }\n if (typeof this.dateRangeField !== 'undefined') {\n toReturn['dateRangeField'] = this.dateRangeField;\n }\n if (typeof this.access !== 'undefined') {\n toReturn['access'] = this.access;\n }\n if (typeof this.sorts !== 'undefined' && this.sorts !== null) {\n toReturn['sorts'] = 'toApiJson' in this.sorts ? this.sorts.toApiJson() : this.sorts;\n }\n if (typeof this.excludeHistory !== 'undefined') {\n toReturn['excludeHistory'] = this.excludeHistory;\n }\n if (typeof this.deletedOnly !== 'undefined') {\n toReturn['deletedOnly'] = this.deletedOnly;\n }\n if (typeof this.tagGroups !== 'undefined' && this.tagGroups !== null) {\n toReturn['tagGroups'] = 'toApiJson' in this.tagGroups ? this.tagGroups.toApiJson() : this.tagGroups;\n }\n if (typeof this.metadataGroups !== 'undefined' && this.metadataGroups !== null) {\n toReturn['metadataGroups'] = 'toApiJson' in this.metadataGroups ? this.metadataGroups.toApiJson() : this.metadataGroups;\n }\n if (typeof this.taskId !== 'undefined') {\n toReturn['taskId'] = this.taskId;\n }\n if (typeof this.customTags !== 'undefined') {\n toReturn['customTags'] = this.customTags;\n }\n return toReturn;\n }\n}\nclass SearchTaskResponse {\n static fromProto(proto) {\n let m = new SearchTaskResponse();\n m = Object.assign(m, proto);\n if (proto.tasks) {\n m.tasks = proto.tasks.map(Task.fromProto);\n }\n if (proto.hits) {\n m.hits = parseInt(proto.hits, 10);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.tasks !== 'undefined' && this.tasks !== null) {\n toReturn['tasks'] = 'toApiJson' in this.tasks ? this.tasks.toApiJson() : this.tasks;\n }\n if (typeof this.nextCursor !== 'undefined') {\n toReturn['nextCursor'] = this.nextCursor;\n }\n if (typeof this.hasMore !== 'undefined') {\n toReturn['hasMore'] = this.hasMore;\n }\n if (typeof this.hits !== 'undefined') {\n toReturn['hits'] = this.hits;\n }\n return toReturn;\n }\n}\nclass SetDescriptionRequest {\n static fromProto(proto) {\n let m = new SetDescriptionRequest();\n m = Object.assign(m, proto);\n if (proto.version) {\n m.version = parseInt(proto.version, 10);\n }\n if (proto.identity) {\n m.identity = TaskIdentity.fromProto(proto.identity);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.version !== 'undefined') {\n toReturn['version'] = this.version;\n }\n if (typeof this.identity !== 'undefined' && this.identity !== null) {\n toReturn['identity'] = 'toApiJson' in this.identity ? this.identity.toApiJson() : this.identity;\n }\n if (typeof this.description !== 'undefined') {\n toReturn['description'] = this.description;\n }\n if (typeof this.callerSubjectId !== 'undefined') {\n toReturn['callerSubjectId'] = this.callerSubjectId;\n }\n return toReturn;\n }\n}\nclass SetDueDateRequest {\n static fromProto(proto) {\n let m = new SetDueDateRequest();\n m = Object.assign(m, proto);\n if (proto.version) {\n m.version = parseInt(proto.version, 10);\n }\n if (proto.identity) {\n m.identity = TaskIdentity.fromProto(proto.identity);\n }\n if (proto.dueDate) {\n m.dueDate = new Date(proto.dueDate);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.version !== 'undefined') {\n toReturn['version'] = this.version;\n }\n if (typeof this.identity !== 'undefined' && this.identity !== null) {\n toReturn['identity'] = 'toApiJson' in this.identity ? this.identity.toApiJson() : this.identity;\n }\n if (typeof this.dueDate !== 'undefined' && this.dueDate !== null) {\n toReturn['dueDate'] = 'toApiJson' in this.dueDate ? this.dueDate.toApiJson() : this.dueDate;\n }\n if (typeof this.callerSubjectId !== 'undefined') {\n toReturn['callerSubjectId'] = this.callerSubjectId;\n }\n return toReturn;\n }\n}\nclass SetKeyValue {\n static fromProto(proto) {\n let m = new SetKeyValue();\n m = Object.assign(m, proto);\n if (proto.version) {\n m.version = parseInt(proto.version, 10);\n }\n if (proto.identity) {\n m.identity = TaskIdentity.fromProto(proto.identity);\n }\n if (proto.keyValueData) {\n m.keyValueData = KeyValues.fromProto(proto.keyValueData);\n }\n if (proto.field) {\n m.field = enumStringToValue$m(KeyValueField, proto.field);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.version !== 'undefined') {\n toReturn['version'] = this.version;\n }\n if (typeof this.identity !== 'undefined' && this.identity !== null) {\n toReturn['identity'] = 'toApiJson' in this.identity ? this.identity.toApiJson() : this.identity;\n }\n if (typeof this.keyValueData !== 'undefined' && this.keyValueData !== null) {\n toReturn['keyValueData'] = 'toApiJson' in this.keyValueData ? this.keyValueData.toApiJson() : this.keyValueData;\n }\n if (typeof this.field !== 'undefined') {\n toReturn['field'] = this.field;\n }\n return toReturn;\n }\n}\nclass SetKeyValuesRequest {\n static fromProto(proto) {\n let m = new SetKeyValuesRequest();\n m = Object.assign(m, proto);\n if (proto.version) {\n m.version = parseInt(proto.version, 10);\n }\n if (proto.identity) {\n m.identity = TaskIdentity.fromProto(proto.identity);\n }\n if (proto.keyValueData) {\n m.keyValueData = KeyValues.fromProto(proto.keyValueData);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.version !== 'undefined') {\n toReturn['version'] = this.version;\n }\n if (typeof this.identity !== 'undefined' && this.identity !== null) {\n toReturn['identity'] = 'toApiJson' in this.identity ? this.identity.toApiJson() : this.identity;\n }\n if (typeof this.keyValueData !== 'undefined' && this.keyValueData !== null) {\n toReturn['keyValueData'] = 'toApiJson' in this.keyValueData ? this.keyValueData.toApiJson() : this.keyValueData;\n }\n if (typeof this.callerSubjectId !== 'undefined') {\n toReturn['callerSubjectId'] = this.callerSubjectId;\n }\n return toReturn;\n }\n}\nclass SetMultiDueDateRequest {\n static fromProto(proto) {\n let m = new SetMultiDueDateRequest();\n m = Object.assign(m, proto);\n if (proto.dueDateRequests) {\n m.dueDateRequests = proto.dueDateRequests.map(SetDueDateRequest.fromProto);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.dueDateRequests !== 'undefined' && this.dueDateRequests !== null) {\n toReturn['dueDateRequests'] = 'toApiJson' in this.dueDateRequests ? this.dueDateRequests.toApiJson() : this.dueDateRequests;\n }\n return toReturn;\n }\n}\nclass SetMultiNotesRequest {\n static fromProto(proto) {\n let m = new SetMultiNotesRequest();\n m = Object.assign(m, proto);\n if (proto.notesRequests) {\n m.notesRequests = proto.notesRequests.map(SetNotesRequest.fromProto);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.notesRequests !== 'undefined' && this.notesRequests !== null) {\n toReturn['notesRequests'] = 'toApiJson' in this.notesRequests ? this.notesRequests.toApiJson() : this.notesRequests;\n }\n return toReturn;\n }\n}\nclass SetMultiStatusRequest {\n static fromProto(proto) {\n let m = new SetMultiStatusRequest();\n m = Object.assign(m, proto);\n if (proto.statusRequests) {\n m.statusRequests = proto.statusRequests.map(SetStatusRequest.fromProto);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.statusRequests !== 'undefined' && this.statusRequests !== null) {\n toReturn['statusRequests'] = 'toApiJson' in this.statusRequests ? this.statusRequests.toApiJson() : this.statusRequests;\n }\n return toReturn;\n }\n}\nclass SetNotesRequest {\n static fromProto(proto) {\n let m = new SetNotesRequest();\n m = Object.assign(m, proto);\n if (proto.version) {\n m.version = parseInt(proto.version, 10);\n }\n if (proto.identity) {\n m.identity = TaskIdentity.fromProto(proto.identity);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.version !== 'undefined') {\n toReturn['version'] = this.version;\n }\n if (typeof this.identity !== 'undefined' && this.identity !== null) {\n toReturn['identity'] = 'toApiJson' in this.identity ? this.identity.toApiJson() : this.identity;\n }\n if (typeof this.notes !== 'undefined') {\n toReturn['notes'] = this.notes;\n }\n if (typeof this.callerSubjectId !== 'undefined') {\n toReturn['callerSubjectId'] = this.callerSubjectId;\n }\n return toReturn;\n }\n}\nclass SetStatusRequest {\n static fromProto(proto) {\n let m = new SetStatusRequest();\n m = Object.assign(m, proto);\n if (proto.version) {\n m.version = parseInt(proto.version, 10);\n }\n if (proto.identity) {\n m.identity = TaskIdentity.fromProto(proto.identity);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.version !== 'undefined') {\n toReturn['version'] = this.version;\n }\n if (typeof this.identity !== 'undefined' && this.identity !== null) {\n toReturn['identity'] = 'toApiJson' in this.identity ? this.identity.toApiJson() : this.identity;\n }\n if (typeof this.status !== 'undefined') {\n toReturn['status'] = this.status;\n }\n if (typeof this.callerSubjectId !== 'undefined') {\n toReturn['callerSubjectId'] = this.callerSubjectId;\n }\n return toReturn;\n }\n}\nclass SetTitleRequest {\n static fromProto(proto) {\n let m = new SetTitleRequest();\n m = Object.assign(m, proto);\n if (proto.version) {\n m.version = parseInt(proto.version, 10);\n }\n if (proto.identity) {\n m.identity = TaskIdentity.fromProto(proto.identity);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.version !== 'undefined') {\n toReturn['version'] = this.version;\n }\n if (typeof this.identity !== 'undefined' && this.identity !== null) {\n toReturn['identity'] = 'toApiJson' in this.identity ? this.identity.toApiJson() : this.identity;\n }\n if (typeof this.title !== 'undefined') {\n toReturn['title'] = this.title;\n }\n if (typeof this.callerSubjectId !== 'undefined') {\n toReturn['callerSubjectId'] = this.callerSubjectId;\n }\n return toReturn;\n }\n}\nclass SetTypeRequest {\n static fromProto(proto) {\n let m = new SetTypeRequest();\n m = Object.assign(m, proto);\n if (proto.version) {\n m.version = parseInt(proto.version, 10);\n }\n if (proto.identity) {\n m.identity = TaskIdentity.fromProto(proto.identity);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.version !== 'undefined') {\n toReturn['version'] = this.version;\n }\n if (typeof this.identity !== 'undefined' && this.identity !== null) {\n toReturn['identity'] = 'toApiJson' in this.identity ? this.identity.toApiJson() : this.identity;\n }\n if (typeof this.taskType !== 'undefined') {\n toReturn['taskType'] = this.taskType;\n }\n if (typeof this.callerSubjectId !== 'undefined') {\n toReturn['callerSubjectId'] = this.callerSubjectId;\n }\n return toReturn;\n }\n}\nclass Sort {\n static fromProto(proto) {\n let m = new Sort();\n m = Object.assign(m, proto);\n if (proto.direction) {\n m.direction = enumStringToValue$m(SortDirection, proto.direction);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.field !== 'undefined') {\n toReturn['field'] = this.field;\n }\n if (typeof this.direction !== 'undefined') {\n toReturn['direction'] = this.direction;\n }\n return toReturn;\n }\n}\nclass TagGroup {\n static fromProto(proto) {\n let m = new TagGroup();\n m = Object.assign(m, proto);\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.tags !== 'undefined') {\n toReturn['tags'] = this.tags;\n }\n return toReturn;\n }\n}\nclass ValueMetricResponse {\n static fromProto(proto) {\n let m = new ValueMetricResponse();\n m = Object.assign(m, proto);\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.key !== 'undefined') {\n toReturn['key'] = this.key;\n }\n if (typeof this.value !== 'undefined') {\n toReturn['value'] = this.value;\n }\n return toReturn;\n }\n}\nfunction enumStringToValue$l(enumRef, value) {\n if (typeof value === 'number') {\n return value;\n }\n return enumRef[value];\n}\nclass PagedRequestOptions {\n static fromProto(proto) {\n let m = new PagedRequestOptions();\n m = Object.assign(m, proto);\n if (proto.pageSize) {\n m.pageSize = parseInt(proto.pageSize, 10);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.cursor !== 'undefined') {\n toReturn['cursor'] = this.cursor;\n }\n if (typeof this.pageSize !== 'undefined') {\n toReturn['pageSize'] = this.pageSize;\n }\n return toReturn;\n }\n}\nclass PagedResponseMetadata {\n static fromProto(proto) {\n let m = new PagedResponseMetadata();\n m = Object.assign(m, proto);\n if (proto.totalResults) {\n m.totalResults = parseInt(proto.totalResults, 10);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.nextCursor !== 'undefined') {\n toReturn['nextCursor'] = this.nextCursor;\n }\n if (typeof this.hasMore !== 'undefined') {\n toReturn['hasMore'] = this.hasMore;\n }\n if (typeof this.totalResults !== 'undefined') {\n toReturn['totalResults'] = this.totalResults;\n }\n return toReturn;\n }\n}\nfunction enumStringToValue$k(enumRef, value) {\n if (typeof value === 'number') {\n return value;\n }\n return enumRef[value];\n}\nclass AddGroupMembersRequest {\n static fromProto(proto) {\n let m = new AddGroupMembersRequest();\n m = Object.assign(m, proto);\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.pathNodes !== 'undefined') {\n toReturn['pathNodes'] = this.pathNodes;\n }\n if (typeof this.members !== 'undefined') {\n toReturn['members'] = this.members;\n }\n return toReturn;\n }\n}\nclass CreateGroupRequest {\n static fromProto(proto) {\n let m = new CreateGroupRequest();\n m = Object.assign(m, proto);\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.partnerId !== 'undefined') {\n toReturn['partnerId'] = this.partnerId;\n }\n if (typeof this.name !== 'undefined') {\n toReturn['name'] = this.name;\n }\n if (typeof this.pathNodes !== 'undefined') {\n toReturn['pathNodes'] = this.pathNodes;\n }\n if (typeof this.membertype !== 'undefined') {\n toReturn['membertype'] = this.membertype;\n }\n if (typeof this.namespace !== 'undefined') {\n toReturn['namespace'] = this.namespace;\n }\n return toReturn;\n }\n}\nclass CreateGroupResponse {\n static fromProto(proto) {\n let m = new CreateGroupResponse();\n m = Object.assign(m, proto);\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.groupId !== 'undefined') {\n toReturn['groupId'] = this.groupId;\n }\n return toReturn;\n }\n}\nclass DeleteGroupRequest {\n static fromProto(proto) {\n let m = new DeleteGroupRequest();\n m = Object.assign(m, proto);\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.pathNodes !== 'undefined') {\n toReturn['pathNodes'] = this.pathNodes;\n }\n return toReturn;\n }\n}\nclass GroupGetMultiRequest {\n static fromProto(proto) {\n let m = new GroupGetMultiRequest();\n m = Object.assign(m, proto);\n if (proto.paths) {\n m.paths = proto.paths.map(Path.fromProto);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.paths !== 'undefined' && this.paths !== null) {\n toReturn['paths'] = 'toApiJson' in this.paths ? this.paths.toApiJson() : this.paths;\n }\n if (typeof this.partnerId !== 'undefined') {\n toReturn['partnerId'] = this.partnerId;\n }\n return toReturn;\n }\n}\nclass GroupGetMultiResponse {\n static fromProto(proto) {\n let m = new GroupGetMultiResponse();\n m = Object.assign(m, proto);\n if (proto.groups) {\n m.groups = proto.groups.map(TaskManagerGroup.fromProto);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.groups !== 'undefined' && this.groups !== null) {\n toReturn['groups'] = 'toApiJson' in this.groups ? this.groups.toApiJson() : this.groups;\n }\n return toReturn;\n }\n}\nclass ListGroupsByMembersResponseGroupsEntry {\n static fromProto(proto) {\n let m = new ListGroupsByMembersResponseGroupsEntry();\n m = Object.assign(m, proto);\n if (proto.value) {\n m.value = TaskManagerGroupList.fromProto(proto.value);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.key !== 'undefined') {\n toReturn['key'] = this.key;\n }\n if (typeof this.value !== 'undefined' && this.value !== null) {\n toReturn['value'] = 'toApiJson' in this.value ? this.value.toApiJson() : this.value;\n }\n return toReturn;\n }\n}\nclass ListGroupMembersRequest {\n static fromProto(proto) {\n let m = new ListGroupMembersRequest();\n m = Object.assign(m, proto);\n if (proto.pagingOptions) {\n m.pagingOptions = PagedRequestOptions.fromProto(proto.pagingOptions);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.pathNodes !== 'undefined') {\n toReturn['pathNodes'] = this.pathNodes;\n }\n if (typeof this.pagingOptions !== 'undefined' && this.pagingOptions !== null) {\n toReturn['pagingOptions'] = 'toApiJson' in this.pagingOptions ? this.pagingOptions.toApiJson() : this.pagingOptions;\n }\n if (typeof this.partnerId !== 'undefined') {\n toReturn['partnerId'] = this.partnerId;\n }\n return toReturn;\n }\n}\nclass ListGroupMembersResponse {\n static fromProto(proto) {\n let m = new ListGroupMembersResponse();\n m = Object.assign(m, proto);\n if (proto.pagingMetadata) {\n m.pagingMetadata = PagedResponseMetadata.fromProto(proto.pagingMetadata);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.members !== 'undefined') {\n toReturn['members'] = this.members;\n }\n if (typeof this.pagingMetadata !== 'undefined' && this.pagingMetadata !== null) {\n toReturn['pagingMetadata'] = 'toApiJson' in this.pagingMetadata ? this.pagingMetadata.toApiJson() : this.pagingMetadata;\n }\n return toReturn;\n }\n}\nclass ListGroupRequest {\n static fromProto(proto) {\n let m = new ListGroupRequest();\n m = Object.assign(m, proto);\n if (proto.pagingOptions) {\n m.pagingOptions = PagedRequestOptions.fromProto(proto.pagingOptions);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.partnerId !== 'undefined') {\n toReturn['partnerId'] = this.partnerId;\n }\n if (typeof this.pathNodes !== 'undefined') {\n toReturn['pathNodes'] = this.pathNodes;\n }\n if (typeof this.memberType !== 'undefined') {\n toReturn['memberType'] = this.memberType;\n }\n if (typeof this.namespace !== 'undefined') {\n toReturn['namespace'] = this.namespace;\n }\n if (typeof this.pagingOptions !== 'undefined' && this.pagingOptions !== null) {\n toReturn['pagingOptions'] = 'toApiJson' in this.pagingOptions ? this.pagingOptions.toApiJson() : this.pagingOptions;\n }\n return toReturn;\n }\n}\nclass ListGroupResponse {\n static fromProto(proto) {\n let m = new ListGroupResponse();\n m = Object.assign(m, proto);\n if (proto.groups) {\n m.groups = proto.groups.map(TaskManagerGroup.fromProto);\n }\n if (proto.pagingMetadata) {\n m.pagingMetadata = PagedResponseMetadata.fromProto(proto.pagingMetadata);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.groups !== 'undefined' && this.groups !== null) {\n toReturn['groups'] = 'toApiJson' in this.groups ? this.groups.toApiJson() : this.groups;\n }\n if (typeof this.pagingMetadata !== 'undefined' && this.pagingMetadata !== null) {\n toReturn['pagingMetadata'] = 'toApiJson' in this.pagingMetadata ? this.pagingMetadata.toApiJson() : this.pagingMetadata;\n }\n return toReturn;\n }\n}\nclass ListGroupsByMembersRequest {\n static fromProto(proto) {\n let m = new ListGroupsByMembersRequest();\n m = Object.assign(m, proto);\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.members !== 'undefined') {\n toReturn['members'] = this.members;\n }\n if (typeof this.partnerId !== 'undefined') {\n toReturn['partnerId'] = this.partnerId;\n }\n return toReturn;\n }\n}\nclass ListGroupsByMembersResponse {\n static fromProto(proto) {\n let m = new ListGroupsByMembersResponse();\n m = Object.assign(m, proto);\n if (proto.groups) {\n m.groups = Object.keys(proto.groups).reduce((obj, k) => {\n obj[k] = TaskManagerGroupList.fromProto(proto.groups[k]);\n return obj;\n }, {});\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.groups !== 'undefined' && this.groups !== null) {\n toReturn['groups'] = 'toApiJson' in this.groups ? this.groups.toApiJson() : this.groups;\n }\n return toReturn;\n }\n}\nclass Path {\n static fromProto(proto) {\n let m = new Path();\n m = Object.assign(m, proto);\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.nodes !== 'undefined') {\n toReturn['nodes'] = this.nodes;\n }\n return toReturn;\n }\n}\nclass RemoveGroupMembersRequest {\n static fromProto(proto) {\n let m = new RemoveGroupMembersRequest();\n m = Object.assign(m, proto);\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.pathNodes !== 'undefined') {\n toReturn['pathNodes'] = this.pathNodes;\n }\n if (typeof this.members !== 'undefined') {\n toReturn['members'] = this.members;\n }\n return toReturn;\n }\n}\nclass TaskManagerGroup {\n static fromProto(proto) {\n let m = new TaskManagerGroup();\n m = Object.assign(m, proto);\n if (proto.membersCount) {\n m.membersCount = parseInt(proto.membersCount, 10);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.groupId !== 'undefined') {\n toReturn['groupId'] = this.groupId;\n }\n if (typeof this.partnerId !== 'undefined') {\n toReturn['partnerId'] = this.partnerId;\n }\n if (typeof this.pathNodes !== 'undefined') {\n toReturn['pathNodes'] = this.pathNodes;\n }\n if (typeof this.name !== 'undefined') {\n toReturn['name'] = this.name;\n }\n if (typeof this.namespace !== 'undefined') {\n toReturn['namespace'] = this.namespace;\n }\n if (typeof this.membersCount !== 'undefined') {\n toReturn['membersCount'] = this.membersCount;\n }\n return toReturn;\n }\n}\nclass TaskManagerGroupList {\n static fromProto(proto) {\n let m = new TaskManagerGroupList();\n m = Object.assign(m, proto);\n if (proto.groups) {\n m.groups = proto.groups.map(TaskManagerGroup.fromProto);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.groups !== 'undefined' && this.groups !== null) {\n toReturn['groups'] = 'toApiJson' in this.groups ? this.groups.toApiJson() : this.groups;\n }\n return toReturn;\n }\n}\nclass UpdateGroupNameRequest {\n static fromProto(proto) {\n let m = new UpdateGroupNameRequest();\n m = Object.assign(m, proto);\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.pathNodes !== 'undefined') {\n toReturn['pathNodes'] = this.pathNodes;\n }\n if (typeof this.name !== 'undefined') {\n toReturn['name'] = this.name;\n }\n return toReturn;\n }\n}\nfunction enumStringToValue$j(enumRef, value) {\n if (typeof value === 'number') {\n return value;\n }\n return enumRef[value];\n}\nclass UpdateTemplateRequestCommand {\n static fromProto(proto) {\n let m = new UpdateTemplateRequestCommand();\n m = Object.assign(m, proto);\n if (proto.daysToComplete) {\n m.daysToComplete = parseInt(proto.daysToComplete, 10);\n }\n if (proto.assigneesToAdd) {\n m.assigneesToAdd = MultiString.fromProto(proto.assigneesToAdd);\n }\n if (proto.assigneesToRemove) {\n m.assigneesToRemove = MultiString.fromProto(proto.assigneesToRemove);\n }\n if (proto.tagsToAdd) {\n m.tagsToAdd = MultiString.fromProto(proto.tagsToAdd);\n }\n if (proto.tagsToRemove) {\n m.tagsToRemove = MultiString.fromProto(proto.tagsToRemove);\n }\n if (proto.reorder) {\n m.reorder = ReorderSubtask.fromProto(proto.reorder);\n }\n if (proto.addSubtask) {\n m.addSubtask = Template.fromProto(proto.addSubtask);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.title !== 'undefined') {\n toReturn['title'] = this.title;\n }\n if (typeof this.daysToComplete !== 'undefined') {\n toReturn['daysToComplete'] = this.daysToComplete;\n }\n if (typeof this.assigneesToAdd !== 'undefined' && this.assigneesToAdd !== null) {\n toReturn['assigneesToAdd'] = 'toApiJson' in this.assigneesToAdd ? this.assigneesToAdd.toApiJson() : this.assigneesToAdd;\n }\n if (typeof this.assigneesToRemove !== 'undefined' && this.assigneesToRemove !== null) {\n toReturn['assigneesToRemove'] = 'toApiJson' in this.assigneesToRemove ? this.assigneesToRemove.toApiJson() : this.assigneesToRemove;\n }\n if (typeof this.description !== 'undefined') {\n toReturn['description'] = this.description;\n }\n if (typeof this.tagsToAdd !== 'undefined' && this.tagsToAdd !== null) {\n toReturn['tagsToAdd'] = 'toApiJson' in this.tagsToAdd ? this.tagsToAdd.toApiJson() : this.tagsToAdd;\n }\n if (typeof this.tagsToRemove !== 'undefined' && this.tagsToRemove !== null) {\n toReturn['tagsToRemove'] = 'toApiJson' in this.tagsToRemove ? this.tagsToRemove.toApiJson() : this.tagsToRemove;\n }\n if (typeof this.notes !== 'undefined') {\n toReturn['notes'] = this.notes;\n }\n if (typeof this.reorder !== 'undefined' && this.reorder !== null) {\n toReturn['reorder'] = 'toApiJson' in this.reorder ? this.reorder.toApiJson() : this.reorder;\n }\n if (typeof this.addSubtask !== 'undefined' && this.addSubtask !== null) {\n toReturn['addSubtask'] = 'toApiJson' in this.addSubtask ? this.addSubtask.toApiJson() : this.addSubtask;\n }\n if (typeof this.associatedProductId !== 'undefined') {\n toReturn['associatedProductId'] = this.associatedProductId;\n }\n if (typeof this.nextTaskLocked !== 'undefined') {\n toReturn['nextTaskLocked'] = this.nextTaskLocked;\n }\n if (typeof this.isVisible !== 'undefined') {\n toReturn['isVisible'] = this.isVisible;\n }\n if (typeof this.recurringTaskId !== 'undefined') {\n toReturn['recurringTaskId'] = this.recurringTaskId;\n }\n return toReturn;\n }\n}\nclass CreateTemplateRequest {\n static fromProto(proto) {\n let m = new CreateTemplateRequest();\n m = Object.assign(m, proto);\n if (proto.template) {\n m.template = Template.fromProto(proto.template);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.template !== 'undefined' && this.template !== null) {\n toReturn['template'] = 'toApiJson' in this.template ? this.template.toApiJson() : this.template;\n }\n return toReturn;\n }\n}\nclass DeleteTemplateRequest {\n static fromProto(proto) {\n let m = new DeleteTemplateRequest();\n m = Object.assign(m, proto);\n if (proto.identity) {\n m.identity = TemplateIdentity.fromProto(proto.identity);\n }\n if (proto.version) {\n m.version = parseInt(proto.version, 10);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.identity !== 'undefined' && this.identity !== null) {\n toReturn['identity'] = 'toApiJson' in this.identity ? this.identity.toApiJson() : this.identity;\n }\n if (typeof this.version !== 'undefined') {\n toReturn['version'] = this.version;\n }\n return toReturn;\n }\n}\nclass GetTemplateRequest {\n static fromProto(proto) {\n let m = new GetTemplateRequest();\n m = Object.assign(m, proto);\n if (proto.identity) {\n m.identity = TemplateIdentity.fromProto(proto.identity);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.identity !== 'undefined' && this.identity !== null) {\n toReturn['identity'] = 'toApiJson' in this.identity ? this.identity.toApiJson() : this.identity;\n }\n return toReturn;\n }\n}\nclass GetTemplateResponse {\n static fromProto(proto) {\n let m = new GetTemplateResponse();\n m = Object.assign(m, proto);\n if (proto.template) {\n m.template = Template.fromProto(proto.template);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.template !== 'undefined' && this.template !== null) {\n toReturn['template'] = 'toApiJson' in this.template ? this.template.toApiJson() : this.template;\n }\n return toReturn;\n }\n}\nclass ListTemplatesRequest {\n static fromProto(proto) {\n let m = new ListTemplatesRequest();\n m = Object.assign(m, proto);\n if (proto.pageSize) {\n m.pageSize = parseInt(proto.pageSize, 10);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.namespace !== 'undefined') {\n toReturn['namespace'] = this.namespace;\n }\n if (typeof this.pageSize !== 'undefined') {\n toReturn['pageSize'] = this.pageSize;\n }\n if (typeof this.cursor !== 'undefined') {\n toReturn['cursor'] = this.cursor;\n }\n return toReturn;\n }\n}\nclass ListTemplatesResponse {\n static fromProto(proto) {\n let m = new ListTemplatesResponse();\n m = Object.assign(m, proto);\n if (proto.templates) {\n m.templates = proto.templates.map(Template.fromProto);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.templates !== 'undefined' && this.templates !== null) {\n toReturn['templates'] = 'toApiJson' in this.templates ? this.templates.toApiJson() : this.templates;\n }\n if (typeof this.cursor !== 'undefined') {\n toReturn['cursor'] = this.cursor;\n }\n if (typeof this.hasMore !== 'undefined') {\n toReturn['hasMore'] = this.hasMore;\n }\n return toReturn;\n }\n}\nclass MultiString {\n static fromProto(proto) {\n let m = new MultiString();\n m = Object.assign(m, proto);\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.values !== 'undefined') {\n toReturn['values'] = this.values;\n }\n return toReturn;\n }\n}\nclass ReorderSubtask {\n static fromProto(proto) {\n let m = new ReorderSubtask();\n m = Object.assign(m, proto);\n if (proto.currentPosition) {\n m.currentPosition = parseInt(proto.currentPosition, 10);\n }\n if (proto.newPosition) {\n m.newPosition = parseInt(proto.newPosition, 10);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.currentPosition !== 'undefined') {\n toReturn['currentPosition'] = this.currentPosition;\n }\n if (typeof this.newPosition !== 'undefined') {\n toReturn['newPosition'] = this.newPosition;\n }\n return toReturn;\n }\n}\nclass Template {\n static fromProto(proto) {\n let m = new Template();\n m = Object.assign(m, proto);\n if (proto.version) {\n m.version = parseInt(proto.version, 10);\n }\n if (proto.identity) {\n m.identity = TemplateIdentity.fromProto(proto.identity);\n }\n if (proto.daysToComplete) {\n m.daysToComplete = parseInt(proto.daysToComplete, 10);\n }\n if (proto.created) {\n m.created = new Date(proto.created);\n }\n if (proto.modified) {\n m.modified = new Date(proto.modified);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.version !== 'undefined') {\n toReturn['version'] = this.version;\n }\n if (typeof this.identity !== 'undefined' && this.identity !== null) {\n toReturn['identity'] = 'toApiJson' in this.identity ? this.identity.toApiJson() : this.identity;\n }\n if (typeof this.title !== 'undefined') {\n toReturn['title'] = this.title;\n }\n if (typeof this.daysToComplete !== 'undefined') {\n toReturn['daysToComplete'] = this.daysToComplete;\n }\n if (typeof this.assignees !== 'undefined') {\n toReturn['assignees'] = this.assignees;\n }\n if (typeof this.description !== 'undefined') {\n toReturn['description'] = this.description;\n }\n if (typeof this.tags !== 'undefined') {\n toReturn['tags'] = this.tags;\n }\n if (typeof this.notes !== 'undefined') {\n toReturn['notes'] = this.notes;\n }\n if (typeof this.templateType !== 'undefined') {\n toReturn['templateType'] = this.templateType;\n }\n if (typeof this.associatedProductId !== 'undefined') {\n toReturn['associatedProductId'] = this.associatedProductId;\n }\n if (typeof this.nextTaskLocked !== 'undefined') {\n toReturn['nextTaskLocked'] = this.nextTaskLocked;\n }\n if (typeof this.subtaskIds !== 'undefined') {\n toReturn['subtaskIds'] = this.subtaskIds;\n }\n if (typeof this.isVisible !== 'undefined') {\n toReturn['isVisible'] = this.isVisible;\n }\n if (typeof this.recurringTaskId !== 'undefined') {\n toReturn['recurringTaskId'] = this.recurringTaskId;\n }\n if (typeof this.created !== 'undefined' && this.created !== null) {\n toReturn['created'] = 'toApiJson' in this.created ? this.created.toApiJson() : this.created;\n }\n if (typeof this.modified !== 'undefined' && this.modified !== null) {\n toReturn['modified'] = 'toApiJson' in this.modified ? this.modified.toApiJson() : this.modified;\n }\n return toReturn;\n }\n}\nclass TemplateIdentity {\n static fromProto(proto) {\n let m = new TemplateIdentity();\n m = Object.assign(m, proto);\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.namespace !== 'undefined') {\n toReturn['namespace'] = this.namespace;\n }\n if (typeof this.parentPath !== 'undefined') {\n toReturn['parentPath'] = this.parentPath;\n }\n if (typeof this.templateId !== 'undefined') {\n toReturn['templateId'] = this.templateId;\n }\n return toReturn;\n }\n}\nclass UpdateTemplateRequest {\n static fromProto(proto) {\n let m = new UpdateTemplateRequest();\n m = Object.assign(m, proto);\n if (proto.identity) {\n m.identity = TemplateIdentity.fromProto(proto.identity);\n }\n if (proto.version) {\n m.version = parseInt(proto.version, 10);\n }\n if (proto.commands) {\n m.commands = proto.commands.map(UpdateTemplateRequestCommand.fromProto);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.identity !== 'undefined' && this.identity !== null) {\n toReturn['identity'] = 'toApiJson' in this.identity ? this.identity.toApiJson() : this.identity;\n }\n if (typeof this.version !== 'undefined') {\n toReturn['version'] = this.version;\n }\n if (typeof this.commands !== 'undefined' && this.commands !== null) {\n toReturn['commands'] = 'toApiJson' in this.commands ? this.commands.toApiJson() : this.commands;\n }\n return toReturn;\n }\n}\nfunction enumStringToValue$i(enumRef, value) {\n if (typeof value === 'number') {\n return value;\n }\n return enumRef[value];\n}\nclass CreateTaskStatusRequest {\n static fromProto(proto) {\n let m = new CreateTaskStatusRequest();\n m = Object.assign(m, proto);\n if (proto.status) {\n m.status = TaskStatus.fromProto(proto.status);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.status !== 'undefined' && this.status !== null) {\n toReturn['status'] = 'toApiJson' in this.status ? this.status.toApiJson() : this.status;\n }\n return toReturn;\n }\n}\nclass CreateTaskStatusResponse {\n static fromProto(proto) {\n let m = new CreateTaskStatusResponse();\n m = Object.assign(m, proto);\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.statusId !== 'undefined') {\n toReturn['statusId'] = this.statusId;\n }\n return toReturn;\n }\n}\nclass DeleteTaskStatusRequest {\n static fromProto(proto) {\n let m = new DeleteTaskStatusRequest();\n m = Object.assign(m, proto);\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.partnerId !== 'undefined') {\n toReturn['partnerId'] = this.partnerId;\n }\n if (typeof this.statusId !== 'undefined') {\n toReturn['statusId'] = this.statusId;\n }\n return toReturn;\n }\n}\nclass GetTaskStatusRequest {\n static fromProto(proto) {\n let m = new GetTaskStatusRequest();\n m = Object.assign(m, proto);\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.partnerId !== 'undefined') {\n toReturn['partnerId'] = this.partnerId;\n }\n if (typeof this.statusId !== 'undefined') {\n toReturn['statusId'] = this.statusId;\n }\n return toReturn;\n }\n}\nclass GetTaskStatusResponse {\n static fromProto(proto) {\n let m = new GetTaskStatusResponse();\n m = Object.assign(m, proto);\n if (proto.status) {\n m.status = TaskStatus.fromProto(proto.status);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.status !== 'undefined' && this.status !== null) {\n toReturn['status'] = 'toApiJson' in this.status ? this.status.toApiJson() : this.status;\n }\n return toReturn;\n }\n}\nclass ListTaskStatusesRequest {\n static fromProto(proto) {\n let m = new ListTaskStatusesRequest();\n m = Object.assign(m, proto);\n if (proto.pageSize) {\n m.pageSize = parseInt(proto.pageSize, 10);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.partnerId !== 'undefined') {\n toReturn['partnerId'] = this.partnerId;\n }\n if (typeof this.cursor !== 'undefined') {\n toReturn['cursor'] = this.cursor;\n }\n if (typeof this.pageSize !== 'undefined') {\n toReturn['pageSize'] = this.pageSize;\n }\n return toReturn;\n }\n}\nclass ListTaskStatusesResponse {\n static fromProto(proto) {\n let m = new ListTaskStatusesResponse();\n m = Object.assign(m, proto);\n if (proto.statuses) {\n m.statuses = proto.statuses.map(TaskStatus.fromProto);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.statuses !== 'undefined' && this.statuses !== null) {\n toReturn['statuses'] = 'toApiJson' in this.statuses ? this.statuses.toApiJson() : this.statuses;\n }\n if (typeof this.cursor !== 'undefined') {\n toReturn['cursor'] = this.cursor;\n }\n if (typeof this.hasMore !== 'undefined') {\n toReturn['hasMore'] = this.hasMore;\n }\n return toReturn;\n }\n}\nclass TaskStatus {\n static fromProto(proto) {\n let m = new TaskStatus();\n m = Object.assign(m, proto);\n if (proto.created) {\n m.created = new Date(proto.created);\n }\n if (proto.modified) {\n m.modified = new Date(proto.modified);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.partnerId !== 'undefined') {\n toReturn['partnerId'] = this.partnerId;\n }\n if (typeof this.statusId !== 'undefined') {\n toReturn['statusId'] = this.statusId;\n }\n if (typeof this.textColour !== 'undefined') {\n toReturn['textColour'] = this.textColour;\n }\n if (typeof this.backgroundColour !== 'undefined') {\n toReturn['backgroundColour'] = this.backgroundColour;\n }\n if (typeof this.name !== 'undefined') {\n toReturn['name'] = this.name;\n }\n if (typeof this.created !== 'undefined' && this.created !== null) {\n toReturn['created'] = 'toApiJson' in this.created ? this.created.toApiJson() : this.created;\n }\n if (typeof this.modified !== 'undefined' && this.modified !== null) {\n toReturn['modified'] = 'toApiJson' in this.modified ? this.modified.toApiJson() : this.modified;\n }\n return toReturn;\n }\n}\nclass UpdateTaskStatusRequest {\n static fromProto(proto) {\n let m = new UpdateTaskStatusRequest();\n m = Object.assign(m, proto);\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.partnerId !== 'undefined') {\n toReturn['partnerId'] = this.partnerId;\n }\n if (typeof this.statusId !== 'undefined') {\n toReturn['statusId'] = this.statusId;\n }\n if (typeof this.textColour !== 'undefined') {\n toReturn['textColour'] = this.textColour;\n }\n if (typeof this.backgroundColour !== 'undefined') {\n toReturn['backgroundColour'] = this.backgroundColour;\n }\n return toReturn;\n }\n}\nfunction enumStringToValue$h(enumRef, value) {\n if (typeof value === 'number') {\n return value;\n }\n return enumRef[value];\n}\nclass ExportProjectsRequest {\n static fromProto(proto) {\n let m = new ExportProjectsRequest();\n m = Object.assign(m, proto);\n if (proto.exportType) {\n m.exportType = enumStringToValue$h(ExportTypes, proto.exportType);\n }\n if (proto.filters) {\n m.filters = ProjectSubtaskCountRequest.fromProto(proto.filters);\n }\n if (proto.columns) {\n m.columns = proto.columns.map(v => enumStringToValue$h(ExportColumns, v));\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.exportType !== 'undefined') {\n toReturn['exportType'] = this.exportType;\n }\n if (typeof this.filters !== 'undefined' && this.filters !== null) {\n toReturn['filters'] = 'toApiJson' in this.filters ? this.filters.toApiJson() : this.filters;\n }\n if (typeof this.columns !== 'undefined') {\n toReturn['columns'] = this.columns;\n }\n return toReturn;\n }\n}\nclass ProjectSubtaskCount {\n static fromProto(proto) {\n let m = new ProjectSubtaskCount();\n m = Object.assign(m, proto);\n if (proto.dueDate) {\n m.dueDate = new Date(proto.dueDate);\n }\n if (proto.completedDate) {\n m.completedDate = new Date(proto.completedDate);\n }\n if (proto.completedSubtasks) {\n m.completedSubtasks = parseInt(proto.completedSubtasks, 10);\n }\n if (proto.totalSubtasks) {\n m.totalSubtasks = parseInt(proto.totalSubtasks, 10);\n }\n if (proto.createdDate) {\n m.createdDate = new Date(proto.createdDate);\n }\n if (proto.updatedDate) {\n m.updatedDate = new Date(proto.updatedDate);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.businessId !== 'undefined') {\n toReturn['businessId'] = this.businessId;\n }\n if (typeof this.projectId !== 'undefined') {\n toReturn['projectId'] = this.projectId;\n }\n if (typeof this.title !== 'undefined') {\n toReturn['title'] = this.title;\n }\n if (typeof this.status !== 'undefined') {\n toReturn['status'] = this.status;\n }\n if (typeof this.dueDate !== 'undefined' && this.dueDate !== null) {\n toReturn['dueDate'] = 'toApiJson' in this.dueDate ? this.dueDate.toApiJson() : this.dueDate;\n }\n if (typeof this.completedDate !== 'undefined' && this.completedDate !== null) {\n toReturn['completedDate'] = 'toApiJson' in this.completedDate ? this.completedDate.toApiJson() : this.completedDate;\n }\n if (typeof this.completedSubtasks !== 'undefined') {\n toReturn['completedSubtasks'] = this.completedSubtasks;\n }\n if (typeof this.totalSubtasks !== 'undefined') {\n toReturn['totalSubtasks'] = this.totalSubtasks;\n }\n if (typeof this.assignees !== 'undefined') {\n toReturn['assignees'] = this.assignees;\n }\n if (typeof this.createdDate !== 'undefined' && this.createdDate !== null) {\n toReturn['createdDate'] = 'toApiJson' in this.createdDate ? this.createdDate.toApiJson() : this.createdDate;\n }\n if (typeof this.updatedDate !== 'undefined' && this.updatedDate !== null) {\n toReturn['updatedDate'] = 'toApiJson' in this.updatedDate ? this.updatedDate.toApiJson() : this.updatedDate;\n }\n if (typeof this.partnerId !== 'undefined') {\n toReturn['partnerId'] = this.partnerId;\n }\n return toReturn;\n }\n}\nclass ProjectSubtaskCountRequest {\n static fromProto(proto) {\n let m = new ProjectSubtaskCountRequest();\n m = Object.assign(m, proto);\n if (proto.dateRangeStart) {\n m.dateRangeStart = new Date(proto.dateRangeStart);\n }\n if (proto.dateRangeEnd) {\n m.dateRangeEnd = new Date(proto.dateRangeEnd);\n }\n if (proto.dateField) {\n m.dateField = enumStringToValue$h(RangeField, proto.dateField);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.partnerId !== 'undefined') {\n toReturn['partnerId'] = this.partnerId;\n }\n if (typeof this.businessId !== 'undefined') {\n toReturn['businessId'] = this.businessId;\n }\n if (typeof this.title !== 'undefined') {\n toReturn['title'] = this.title;\n }\n if (typeof this.status !== 'undefined') {\n toReturn['status'] = this.status;\n }\n if (typeof this.assignees !== 'undefined') {\n toReturn['assignees'] = this.assignees;\n }\n if (typeof this.dateRangeStart !== 'undefined' && this.dateRangeStart !== null) {\n toReturn['dateRangeStart'] = 'toApiJson' in this.dateRangeStart ? this.dateRangeStart.toApiJson() : this.dateRangeStart;\n }\n if (typeof this.dateRangeEnd !== 'undefined' && this.dateRangeEnd !== null) {\n toReturn['dateRangeEnd'] = 'toApiJson' in this.dateRangeEnd ? this.dateRangeEnd.toApiJson() : this.dateRangeEnd;\n }\n if (typeof this.dateField !== 'undefined') {\n toReturn['dateField'] = this.dateField;\n }\n if (typeof this.cursor !== 'undefined') {\n toReturn['cursor'] = this.cursor;\n }\n if (typeof this.limit !== 'undefined') {\n toReturn['limit'] = this.limit;\n }\n return toReturn;\n }\n}\nclass ProjectSubtaskCountResponse {\n static fromProto(proto) {\n let m = new ProjectSubtaskCountResponse();\n m = Object.assign(m, proto);\n if (proto.projectSubtaskCount) {\n m.projectSubtaskCount = proto.projectSubtaskCount.map(ProjectSubtaskCount.fromProto);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.partnerId !== 'undefined') {\n toReturn['partnerId'] = this.partnerId;\n }\n if (typeof this.projectSubtaskCount !== 'undefined' && this.projectSubtaskCount !== null) {\n toReturn['projectSubtaskCount'] = 'toApiJson' in this.projectSubtaskCount ? this.projectSubtaskCount.toApiJson() : this.projectSubtaskCount;\n }\n if (typeof this.cursor !== 'undefined') {\n toReturn['cursor'] = this.cursor;\n }\n return toReturn;\n }\n}\nfunction enumStringToValue$g(enumRef, value) {\n if (typeof value === 'number') {\n return value;\n }\n return enumRef[value];\n}\nclass CreateDigitalAgentRequest {\n static fromProto(proto) {\n let m = new CreateDigitalAgentRequest();\n m = Object.assign(m, proto);\n if (proto.partnerPermissions) {\n m.partnerPermissions = Object.keys(proto.partnerPermissions).reduce((obj, k) => {\n obj[k] = Permissions.fromProto(proto.partnerPermissions[k]);\n return obj;\n }, {});\n }\n if (proto.welcomeEmailOptions) {\n m.welcomeEmailOptions = WelcomeEmailOptions.fromProto(proto.welcomeEmailOptions);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.partnerId !== 'undefined') {\n toReturn['partnerId'] = this.partnerId;\n }\n if (typeof this.agentEmail !== 'undefined') {\n toReturn['agentEmail'] = this.agentEmail;\n }\n if (typeof this.firstName !== 'undefined') {\n toReturn['firstName'] = this.firstName;\n }\n if (typeof this.lastName !== 'undefined') {\n toReturn['lastName'] = this.lastName;\n }\n if (typeof this.sendWelcome !== 'undefined') {\n toReturn['sendWelcome'] = this.sendWelcome;\n }\n if (typeof this.partnerPermissions !== 'undefined' && this.partnerPermissions !== null) {\n toReturn['partnerPermissions'] = 'toApiJson' in this.partnerPermissions ? this.partnerPermissions.toApiJson() : this.partnerPermissions;\n }\n if (typeof this.welcomeEmailOptions !== 'undefined' && this.welcomeEmailOptions !== null) {\n toReturn['welcomeEmailOptions'] = 'toApiJson' in this.welcomeEmailOptions ? this.welcomeEmailOptions.toApiJson() : this.welcomeEmailOptions;\n }\n return toReturn;\n }\n}\nclass DeleteUserRequest {\n static fromProto(proto) {\n let m = new DeleteUserRequest();\n m = Object.assign(m, proto);\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.subjectId !== 'undefined') {\n toReturn['subjectId'] = this.subjectId;\n }\n return toReturn;\n }\n}\nclass DigitalAgent {\n static fromProto(proto) {\n let m = new DigitalAgent();\n m = Object.assign(m, proto);\n if (proto.created) {\n m.created = new Date(proto.created);\n }\n if (proto.modified) {\n m.modified = new Date(proto.modified);\n }\n if (proto.partnerPermissions) {\n m.partnerPermissions = Object.keys(proto.partnerPermissions).reduce((obj, k) => {\n obj[k] = Permissions.fromProto(proto.partnerPermissions[k]);\n return obj;\n }, {});\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.userId !== 'undefined') {\n toReturn['userId'] = this.userId;\n }\n if (typeof this.subjectId !== 'undefined') {\n toReturn['subjectId'] = this.subjectId;\n }\n if (typeof this.partnerId !== 'undefined') {\n toReturn['partnerId'] = this.partnerId;\n }\n if (typeof this.firstName !== 'undefined') {\n toReturn['firstName'] = this.firstName;\n }\n if (typeof this.lastName !== 'undefined') {\n toReturn['lastName'] = this.lastName;\n }\n if (typeof this.email !== 'undefined') {\n toReturn['email'] = this.email;\n }\n if (typeof this.created !== 'undefined' && this.created !== null) {\n toReturn['created'] = 'toApiJson' in this.created ? this.created.toApiJson() : this.created;\n }\n if (typeof this.modified !== 'undefined' && this.modified !== null) {\n toReturn['modified'] = 'toApiJson' in this.modified ? this.modified.toApiJson() : this.modified;\n }\n if (typeof this.accessiblePartnerIds !== 'undefined') {\n toReturn['accessiblePartnerIds'] = this.accessiblePartnerIds;\n }\n if (typeof this.partnerPermissions !== 'undefined' && this.partnerPermissions !== null) {\n toReturn['partnerPermissions'] = 'toApiJson' in this.partnerPermissions ? this.partnerPermissions.toApiJson() : this.partnerPermissions;\n }\n if (typeof this.profilePictureUrl !== 'undefined') {\n toReturn['profilePictureUrl'] = this.profilePictureUrl;\n }\n return toReturn;\n }\n}\nclass GetDigitalAgentsBySubjectIdsRequest {\n static fromProto(proto) {\n let m = new GetDigitalAgentsBySubjectIdsRequest();\n m = Object.assign(m, proto);\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.partnerId !== 'undefined') {\n toReturn['partnerId'] = this.partnerId;\n }\n if (typeof this.subjectIds !== 'undefined') {\n toReturn['subjectIds'] = this.subjectIds;\n }\n return toReturn;\n }\n}\nclass GetDigitalAgentsBySubjectIdsResponse {\n static fromProto(proto) {\n let m = new GetDigitalAgentsBySubjectIdsResponse();\n m = Object.assign(m, proto);\n if (proto.digitalAgents) {\n m.digitalAgents = proto.digitalAgents.map(DigitalAgent.fromProto);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.digitalAgents !== 'undefined' && this.digitalAgents !== null) {\n toReturn['digitalAgents'] = 'toApiJson' in this.digitalAgents ? this.digitalAgents.toApiJson() : this.digitalAgents;\n }\n return toReturn;\n }\n}\nclass GetDigitalAgentsByUserIdsRequest {\n static fromProto(proto) {\n let m = new GetDigitalAgentsByUserIdsRequest();\n m = Object.assign(m, proto);\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.partnerId !== 'undefined') {\n toReturn['partnerId'] = this.partnerId;\n }\n if (typeof this.userIds !== 'undefined') {\n toReturn['userIds'] = this.userIds;\n }\n return toReturn;\n }\n}\nclass GetDigitalAgentsByUserIdsResponse {\n static fromProto(proto) {\n let m = new GetDigitalAgentsByUserIdsResponse();\n m = Object.assign(m, proto);\n if (proto.digitalAgents) {\n m.digitalAgents = proto.digitalAgents.map(DigitalAgent.fromProto);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.digitalAgents !== 'undefined' && this.digitalAgents !== null) {\n toReturn['digitalAgents'] = 'toApiJson' in this.digitalAgents ? this.digitalAgents.toApiJson() : this.digitalAgents;\n }\n return toReturn;\n }\n}\nclass GetMultiUserInfoExternalRequest {\n static fromProto(proto) {\n let m = new GetMultiUserInfoExternalRequest();\n m = Object.assign(m, proto);\n if (proto.userParams) {\n m.userParams = proto.userParams.map(UserParam.fromProto);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.userParams !== 'undefined' && this.userParams !== null) {\n toReturn['userParams'] = 'toApiJson' in this.userParams ? this.userParams.toApiJson() : this.userParams;\n }\n return toReturn;\n }\n}\nclass GetMultiUserInfoExternalResponse {\n static fromProto(proto) {\n let m = new GetMultiUserInfoExternalResponse();\n m = Object.assign(m, proto);\n if (proto.users) {\n m.users = Object.keys(proto.users).reduce((obj, k) => {\n obj[k] = UserInfo.fromProto(proto.users[k]);\n return obj;\n }, {});\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.users !== 'undefined' && this.users !== null) {\n toReturn['users'] = 'toApiJson' in this.users ? this.users.toApiJson() : this.users;\n }\n return toReturn;\n }\n}\nclass ListAssigneesForPartnerRequest {\n static fromProto(proto) {\n let m = new ListAssigneesForPartnerRequest();\n m = Object.assign(m, proto);\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.partnerId !== 'undefined') {\n toReturn['partnerId'] = this.partnerId;\n }\n if (typeof this.onlyIncludeSameNamespace !== 'undefined') {\n toReturn['onlyIncludeSameNamespace'] = this.onlyIncludeSameNamespace;\n }\n return toReturn;\n }\n}\nclass ListAssigneesForPartnerResponse {\n static fromProto(proto) {\n let m = new ListAssigneesForPartnerResponse();\n m = Object.assign(m, proto);\n if (proto.digitalAgents) {\n m.digitalAgents = proto.digitalAgents.map(DigitalAgent.fromProto);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.digitalAgents !== 'undefined' && this.digitalAgents !== null) {\n toReturn['digitalAgents'] = 'toApiJson' in this.digitalAgents ? this.digitalAgents.toApiJson() : this.digitalAgents;\n }\n return toReturn;\n }\n}\nclass UpdateDigitalAgentRequestPartnerPermissionsEntry {\n static fromProto(proto) {\n let m = new UpdateDigitalAgentRequestPartnerPermissionsEntry();\n m = Object.assign(m, proto);\n if (proto.value) {\n m.value = Permissions.fromProto(proto.value);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.key !== 'undefined') {\n toReturn['key'] = this.key;\n }\n if (typeof this.value !== 'undefined' && this.value !== null) {\n toReturn['value'] = 'toApiJson' in this.value ? this.value.toApiJson() : this.value;\n }\n return toReturn;\n }\n}\nclass DigitalAgentPartnerPermissionsEntry {\n static fromProto(proto) {\n let m = new DigitalAgentPartnerPermissionsEntry();\n m = Object.assign(m, proto);\n if (proto.value) {\n m.value = Permissions.fromProto(proto.value);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.key !== 'undefined') {\n toReturn['key'] = this.key;\n }\n if (typeof this.value !== 'undefined' && this.value !== null) {\n toReturn['value'] = 'toApiJson' in this.value ? this.value.toApiJson() : this.value;\n }\n return toReturn;\n }\n}\nclass CreateDigitalAgentRequestPartnerPermissionsEntry {\n static fromProto(proto) {\n let m = new CreateDigitalAgentRequestPartnerPermissionsEntry();\n m = Object.assign(m, proto);\n if (proto.value) {\n m.value = Permissions.fromProto(proto.value);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.key !== 'undefined') {\n toReturn['key'] = this.key;\n }\n if (typeof this.value !== 'undefined' && this.value !== null) {\n toReturn['value'] = 'toApiJson' in this.value ? this.value.toApiJson() : this.value;\n }\n return toReturn;\n }\n}\nclass Permissions {\n static fromProto(proto) {\n let m = new Permissions();\n m = Object.assign(m, proto);\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.canAccess !== 'undefined') {\n toReturn['canAccess'] = this.canAccess;\n }\n if (typeof this.isManager !== 'undefined') {\n toReturn['isManager'] = this.isManager;\n }\n return toReturn;\n }\n}\nclass ResetEmailOptions {\n static fromProto(proto) {\n let m = new ResetEmailOptions();\n m = Object.assign(m, proto);\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.usePlatformDefaultDomain !== 'undefined') {\n toReturn['usePlatformDefaultDomain'] = this.usePlatformDefaultDomain;\n }\n return toReturn;\n }\n}\nclass SendWelcomeEmailRequest {\n static fromProto(proto) {\n let m = new SendWelcomeEmailRequest();\n m = Object.assign(m, proto);\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.partnerId !== 'undefined') {\n toReturn['partnerId'] = this.partnerId;\n }\n if (typeof this.userId !== 'undefined') {\n toReturn['userId'] = this.userId;\n }\n if (typeof this.subjectId !== 'undefined') {\n toReturn['subjectId'] = this.subjectId;\n }\n if (typeof this.usePlatformDefaultDomain !== 'undefined') {\n toReturn['usePlatformDefaultDomain'] = this.usePlatformDefaultDomain;\n }\n return toReturn;\n }\n}\nclass UpdateDigitalAgentRequest {\n static fromProto(proto) {\n let m = new UpdateDigitalAgentRequest();\n m = Object.assign(m, proto);\n if (proto.partnerPermissions) {\n m.partnerPermissions = Object.keys(proto.partnerPermissions).reduce((obj, k) => {\n obj[k] = Permissions.fromProto(proto.partnerPermissions[k]);\n return obj;\n }, {});\n }\n if (proto.resetEmailOptions) {\n m.resetEmailOptions = ResetEmailOptions.fromProto(proto.resetEmailOptions);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.partnerId !== 'undefined') {\n toReturn['partnerId'] = this.partnerId;\n }\n if (typeof this.agentEmail !== 'undefined') {\n toReturn['agentEmail'] = this.agentEmail;\n }\n if (typeof this.subjectId !== 'undefined') {\n toReturn['subjectId'] = this.subjectId;\n }\n if (typeof this.firstName !== 'undefined') {\n toReturn['firstName'] = this.firstName;\n }\n if (typeof this.lastName !== 'undefined') {\n toReturn['lastName'] = this.lastName;\n }\n if (typeof this.sendResetEmail !== 'undefined') {\n toReturn['sendResetEmail'] = this.sendResetEmail;\n }\n if (typeof this.partnerPermissions !== 'undefined' && this.partnerPermissions !== null) {\n toReturn['partnerPermissions'] = 'toApiJson' in this.partnerPermissions ? this.partnerPermissions.toApiJson() : this.partnerPermissions;\n }\n if (typeof this.resetEmailOptions !== 'undefined' && this.resetEmailOptions !== null) {\n toReturn['resetEmailOptions'] = 'toApiJson' in this.resetEmailOptions ? this.resetEmailOptions.toApiJson() : this.resetEmailOptions;\n }\n return toReturn;\n }\n}\nclass UserInfo {\n static fromProto(proto) {\n let m = new UserInfo();\n m = Object.assign(m, proto);\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.email !== 'undefined') {\n toReturn['email'] = this.email;\n }\n if (typeof this.firstName !== 'undefined') {\n toReturn['firstName'] = this.firstName;\n }\n return toReturn;\n }\n}\nclass UserParam {\n static fromProto(proto) {\n let m = new UserParam();\n m = Object.assign(m, proto);\n if (proto.personaType) {\n m.personaType = enumStringToValue$g(PersonaType, proto.personaType);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.userId !== 'undefined') {\n toReturn['userId'] = this.userId;\n }\n if (typeof this.personaType !== 'undefined') {\n toReturn['personaType'] = this.personaType;\n }\n return toReturn;\n }\n}\nclass GetMultiUserInfoExternalResponseUsersEntry {\n static fromProto(proto) {\n let m = new GetMultiUserInfoExternalResponseUsersEntry();\n m = Object.assign(m, proto);\n if (proto.value) {\n m.value = UserInfo.fromProto(proto.value);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.key !== 'undefined') {\n toReturn['key'] = this.key;\n }\n if (typeof this.value !== 'undefined' && this.value !== null) {\n toReturn['value'] = 'toApiJson' in this.value ? this.value.toApiJson() : this.value;\n }\n return toReturn;\n }\n}\nclass WelcomeEmailOptions {\n static fromProto(proto) {\n let m = new WelcomeEmailOptions();\n m = Object.assign(m, proto);\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.usePlatformDefaultDomain !== 'undefined') {\n toReturn['usePlatformDefaultDomain'] = this.usePlatformDefaultDomain;\n }\n return toReturn;\n }\n}\nfunction enumStringToValue$f(enumRef, value) {\n if (typeof value === 'number') {\n return value;\n }\n return enumRef[value];\n}\nclass CreateCustomTagRequest {\n static fromProto(proto) {\n let m = new CreateCustomTagRequest();\n m = Object.assign(m, proto);\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.partnerId !== 'undefined') {\n toReturn['partnerId'] = this.partnerId;\n }\n if (typeof this.tagName !== 'undefined') {\n toReturn['tagName'] = this.tagName;\n }\n return toReturn;\n }\n}\nclass CreateCustomTagResponse {\n static fromProto(proto) {\n let m = new CreateCustomTagResponse();\n m = Object.assign(m, proto);\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.tagId !== 'undefined') {\n toReturn['tagId'] = this.tagId;\n }\n return toReturn;\n }\n}\nclass CustomTag {\n static fromProto(proto) {\n let m = new CustomTag();\n m = Object.assign(m, proto);\n if (proto.created) {\n m.created = new Date(proto.created);\n }\n if (proto.modified) {\n m.modified = new Date(proto.modified);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.partnerId !== 'undefined') {\n toReturn['partnerId'] = this.partnerId;\n }\n if (typeof this.tagId !== 'undefined') {\n toReturn['tagId'] = this.tagId;\n }\n if (typeof this.tagName !== 'undefined') {\n toReturn['tagName'] = this.tagName;\n }\n if (typeof this.created !== 'undefined' && this.created !== null) {\n toReturn['created'] = 'toApiJson' in this.created ? this.created.toApiJson() : this.created;\n }\n if (typeof this.modified !== 'undefined' && this.modified !== null) {\n toReturn['modified'] = 'toApiJson' in this.modified ? this.modified.toApiJson() : this.modified;\n }\n return toReturn;\n }\n}\nclass DeleteCustomTagRequest {\n static fromProto(proto) {\n let m = new DeleteCustomTagRequest();\n m = Object.assign(m, proto);\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.partnerId !== 'undefined') {\n toReturn['partnerId'] = this.partnerId;\n }\n if (typeof this.tagId !== 'undefined') {\n toReturn['tagId'] = this.tagId;\n }\n return toReturn;\n }\n}\nclass GetCustomTagRequest {\n static fromProto(proto) {\n let m = new GetCustomTagRequest();\n m = Object.assign(m, proto);\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.partnerId !== 'undefined') {\n toReturn['partnerId'] = this.partnerId;\n }\n if (typeof this.tagId !== 'undefined') {\n toReturn['tagId'] = this.tagId;\n }\n return toReturn;\n }\n}\nclass GetCustomTagResponse {\n static fromProto(proto) {\n let m = new GetCustomTagResponse();\n m = Object.assign(m, proto);\n if (proto.tag) {\n m.tag = CustomTag.fromProto(proto.tag);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.tag !== 'undefined' && this.tag !== null) {\n toReturn['tag'] = 'toApiJson' in this.tag ? this.tag.toApiJson() : this.tag;\n }\n return toReturn;\n }\n}\nclass GetMultiCustomTagRequest {\n static fromProto(proto) {\n let m = new GetMultiCustomTagRequest();\n m = Object.assign(m, proto);\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.partnerId !== 'undefined') {\n toReturn['partnerId'] = this.partnerId;\n }\n if (typeof this.tagIds !== 'undefined') {\n toReturn['tagIds'] = this.tagIds;\n }\n return toReturn;\n }\n}\nclass GetMultiCustomTagResponse {\n static fromProto(proto) {\n let m = new GetMultiCustomTagResponse();\n m = Object.assign(m, proto);\n if (proto.tags) {\n m.tags = proto.tags.map(CustomTag.fromProto);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.tags !== 'undefined' && this.tags !== null) {\n toReturn['tags'] = 'toApiJson' in this.tags ? this.tags.toApiJson() : this.tags;\n }\n return toReturn;\n }\n}\nclass ListCustomTagsRequest {\n static fromProto(proto) {\n let m = new ListCustomTagsRequest();\n m = Object.assign(m, proto);\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.partnerId !== 'undefined') {\n toReturn['partnerId'] = this.partnerId;\n }\n return toReturn;\n }\n}\nclass ListCustomTagsResponse {\n static fromProto(proto) {\n let m = new ListCustomTagsResponse();\n m = Object.assign(m, proto);\n if (proto.tags) {\n m.tags = proto.tags.map(CustomTag.fromProto);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.tags !== 'undefined' && this.tags !== null) {\n toReturn['tags'] = 'toApiJson' in this.tags ? this.tags.toApiJson() : this.tags;\n }\n return toReturn;\n }\n}\nclass UpdateCustomTagRequest {\n static fromProto(proto) {\n let m = new UpdateCustomTagRequest();\n m = Object.assign(m, proto);\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.partnerId !== 'undefined') {\n toReturn['partnerId'] = this.partnerId;\n }\n if (typeof this.tagId !== 'undefined') {\n toReturn['tagId'] = this.tagId;\n }\n if (typeof this.newTagName !== 'undefined') {\n toReturn['newTagName'] = this.newTagName;\n }\n return toReturn;\n }\n}\nfunction enumStringToValue$e(enumRef, value) {\n if (typeof value === 'number') {\n return value;\n }\n return enumRef[value];\n}\nclass AddProductsRequest {\n static fromProto(proto) {\n let m = new AddProductsRequest();\n m = Object.assign(m, proto);\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.businessId !== 'undefined') {\n toReturn['businessId'] = this.businessId;\n }\n if (typeof this.productIds !== 'undefined') {\n toReturn['productIds'] = this.productIds;\n }\n return toReturn;\n }\n}\nclass BusinessFulfillmentSetting {\n static fromProto(proto) {\n let m = new BusinessFulfillmentSetting();\n m = Object.assign(m, proto);\n if (proto.created) {\n m.created = new Date(proto.created);\n }\n if (proto.modified) {\n m.modified = new Date(proto.modified);\n }\n if (proto.deleted) {\n m.deleted = new Date(proto.deleted);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.businessId !== 'undefined') {\n toReturn['businessId'] = this.businessId;\n }\n if (typeof this.productIds !== 'undefined') {\n toReturn['productIds'] = this.productIds;\n }\n if (typeof this.created !== 'undefined' && this.created !== null) {\n toReturn['created'] = 'toApiJson' in this.created ? this.created.toApiJson() : this.created;\n }\n if (typeof this.modified !== 'undefined' && this.modified !== null) {\n toReturn['modified'] = 'toApiJson' in this.modified ? this.modified.toApiJson() : this.modified;\n }\n if (typeof this.deleted !== 'undefined' && this.deleted !== null) {\n toReturn['deleted'] = 'toApiJson' in this.deleted ? this.deleted.toApiJson() : this.deleted;\n }\n return toReturn;\n }\n}\nclass CreateBusinessFulfillmentSettingRequest {\n static fromProto(proto) {\n let m = new CreateBusinessFulfillmentSettingRequest();\n m = Object.assign(m, proto);\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.businessId !== 'undefined') {\n toReturn['businessId'] = this.businessId;\n }\n if (typeof this.productIds !== 'undefined') {\n toReturn['productIds'] = this.productIds;\n }\n return toReturn;\n }\n}\nclass CreateProductFulfillmentSettingRequest {\n static fromProto(proto) {\n let m = new CreateProductFulfillmentSettingRequest();\n m = Object.assign(m, proto);\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.productId !== 'undefined') {\n toReturn['productId'] = this.productId;\n }\n if (typeof this.taskType !== 'undefined') {\n toReturn['taskType'] = this.taskType;\n }\n if (typeof this.fulfillingPartnerId !== 'undefined') {\n toReturn['fulfillingPartnerId'] = this.fulfillingPartnerId;\n }\n if (typeof this.ownerPartnerId !== 'undefined') {\n toReturn['ownerPartnerId'] = this.ownerPartnerId;\n }\n if (typeof this.templateId !== 'undefined') {\n toReturn['templateId'] = this.templateId;\n }\n return toReturn;\n }\n}\nclass DeleteBusinessFulfillmentSettingRequest {\n static fromProto(proto) {\n let m = new DeleteBusinessFulfillmentSettingRequest();\n m = Object.assign(m, proto);\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.businessId !== 'undefined') {\n toReturn['businessId'] = this.businessId;\n }\n return toReturn;\n }\n}\nclass DeleteProductFulfillmentSettingRequest {\n static fromProto(proto) {\n let m = new DeleteProductFulfillmentSettingRequest();\n m = Object.assign(m, proto);\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.productId !== 'undefined') {\n toReturn['productId'] = this.productId;\n }\n if (typeof this.taskType !== 'undefined') {\n toReturn['taskType'] = this.taskType;\n }\n return toReturn;\n }\n}\nclass GetBusinessFulfillmentSettingRequest {\n static fromProto(proto) {\n let m = new GetBusinessFulfillmentSettingRequest();\n m = Object.assign(m, proto);\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.businessId !== 'undefined') {\n toReturn['businessId'] = this.businessId;\n }\n return toReturn;\n }\n}\nclass GetBusinessFulfillmentSettingResponse {\n static fromProto(proto) {\n let m = new GetBusinessFulfillmentSettingResponse();\n m = Object.assign(m, proto);\n if (proto.setting) {\n m.setting = BusinessFulfillmentSetting.fromProto(proto.setting);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.setting !== 'undefined' && this.setting !== null) {\n toReturn['setting'] = 'toApiJson' in this.setting ? this.setting.toApiJson() : this.setting;\n }\n return toReturn;\n }\n}\nclass GetMultiProductFulfillmentSettingRequest {\n static fromProto(proto) {\n let m = new GetMultiProductFulfillmentSettingRequest();\n m = Object.assign(m, proto);\n if (proto.settingIds) {\n m.settingIds = proto.settingIds.map(ProductFulfillmentSettingKey.fromProto);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.settingIds !== 'undefined' && this.settingIds !== null) {\n toReturn['settingIds'] = 'toApiJson' in this.settingIds ? this.settingIds.toApiJson() : this.settingIds;\n }\n return toReturn;\n }\n}\nclass GetMultiProductFulfillmentSettingResponse {\n static fromProto(proto) {\n let m = new GetMultiProductFulfillmentSettingResponse();\n m = Object.assign(m, proto);\n if (proto.settings) {\n m.settings = proto.settings.map(ProductFulfillmentSetting.fromProto);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.settings !== 'undefined' && this.settings !== null) {\n toReturn['settings'] = 'toApiJson' in this.settings ? this.settings.toApiJson() : this.settings;\n }\n return toReturn;\n }\n}\nclass LookupProductFulfillmentSettingRequest {\n static fromProto(proto) {\n let m = new LookupProductFulfillmentSettingRequest();\n m = Object.assign(m, proto);\n if (proto.pagingOptions) {\n m.pagingOptions = PagedRequestOptions.fromProto(proto.pagingOptions);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.productId !== 'undefined') {\n toReturn['productId'] = this.productId;\n }\n if (typeof this.pagingOptions !== 'undefined' && this.pagingOptions !== null) {\n toReturn['pagingOptions'] = 'toApiJson' in this.pagingOptions ? this.pagingOptions.toApiJson() : this.pagingOptions;\n }\n if (typeof this.partnerId !== 'undefined') {\n toReturn['partnerId'] = this.partnerId;\n }\n return toReturn;\n }\n}\nclass LookupProductFulfillmentSettingResponse {\n static fromProto(proto) {\n let m = new LookupProductFulfillmentSettingResponse();\n m = Object.assign(m, proto);\n if (proto.settings) {\n m.settings = proto.settings.map(ProductFulfillmentSetting.fromProto);\n }\n if (proto.pagingMetadata) {\n m.pagingMetadata = PagedResponseMetadata.fromProto(proto.pagingMetadata);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.settings !== 'undefined' && this.settings !== null) {\n toReturn['settings'] = 'toApiJson' in this.settings ? this.settings.toApiJson() : this.settings;\n }\n if (typeof this.pagingMetadata !== 'undefined' && this.pagingMetadata !== null) {\n toReturn['pagingMetadata'] = 'toApiJson' in this.pagingMetadata ? this.pagingMetadata.toApiJson() : this.pagingMetadata;\n }\n return toReturn;\n }\n}\nclass ProductFulfillmentSetting {\n static fromProto(proto) {\n let m = new ProductFulfillmentSetting();\n m = Object.assign(m, proto);\n if (proto.created) {\n m.created = new Date(proto.created);\n }\n if (proto.modified) {\n m.modified = new Date(proto.modified);\n }\n if (proto.deleted) {\n m.deleted = new Date(proto.deleted);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.productId !== 'undefined') {\n toReturn['productId'] = this.productId;\n }\n if (typeof this.taskType !== 'undefined') {\n toReturn['taskType'] = this.taskType;\n }\n if (typeof this.fulfillingPartnerId !== 'undefined') {\n toReturn['fulfillingPartnerId'] = this.fulfillingPartnerId;\n }\n if (typeof this.ownerPartnerId !== 'undefined') {\n toReturn['ownerPartnerId'] = this.ownerPartnerId;\n }\n if (typeof this.created !== 'undefined' && this.created !== null) {\n toReturn['created'] = 'toApiJson' in this.created ? this.created.toApiJson() : this.created;\n }\n if (typeof this.modified !== 'undefined' && this.modified !== null) {\n toReturn['modified'] = 'toApiJson' in this.modified ? this.modified.toApiJson() : this.modified;\n }\n if (typeof this.deleted !== 'undefined' && this.deleted !== null) {\n toReturn['deleted'] = 'toApiJson' in this.deleted ? this.deleted.toApiJson() : this.deleted;\n }\n if (typeof this.templateId !== 'undefined') {\n toReturn['templateId'] = this.templateId;\n }\n return toReturn;\n }\n}\nclass ProductFulfillmentSettingKey {\n static fromProto(proto) {\n let m = new ProductFulfillmentSettingKey();\n m = Object.assign(m, proto);\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.productId !== 'undefined') {\n toReturn['productId'] = this.productId;\n }\n if (typeof this.taskType !== 'undefined') {\n toReturn['taskType'] = this.taskType;\n }\n return toReturn;\n }\n}\nclass RemoveProductsRequest {\n static fromProto(proto) {\n let m = new RemoveProductsRequest();\n m = Object.assign(m, proto);\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.businessId !== 'undefined') {\n toReturn['businessId'] = this.businessId;\n }\n if (typeof this.productIds !== 'undefined') {\n toReturn['productIds'] = this.productIds;\n }\n return toReturn;\n }\n}\nclass SetFulfillingPartnerRequest {\n static fromProto(proto) {\n let m = new SetFulfillingPartnerRequest();\n m = Object.assign(m, proto);\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.productId !== 'undefined') {\n toReturn['productId'] = this.productId;\n }\n if (typeof this.fulfillingPartnerId !== 'undefined') {\n toReturn['fulfillingPartnerId'] = this.fulfillingPartnerId;\n }\n return toReturn;\n }\n}\nclass SetTemplateRequest {\n static fromProto(proto) {\n let m = new SetTemplateRequest();\n m = Object.assign(m, proto);\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.productId !== 'undefined') {\n toReturn['productId'] = this.productId;\n }\n if (typeof this.taskType !== 'undefined') {\n toReturn['taskType'] = this.taskType;\n }\n if (typeof this.templateId !== 'undefined') {\n toReturn['templateId'] = this.templateId;\n }\n return toReturn;\n }\n}\nfunction enumStringToValue$d(enumRef, value) {\n if (typeof value === 'number') {\n return value;\n }\n return enumRef[value];\n}\nclass Salesperson {\n static fromProto(proto) {\n let m = new Salesperson();\n m = Object.assign(m, proto);\n if (proto.lastLogin) {\n m.lastLogin = new Date(proto.lastLogin);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.salespersonId !== 'undefined') {\n toReturn['salespersonId'] = this.salespersonId;\n }\n if (typeof this.firstName !== 'undefined') {\n toReturn['firstName'] = this.firstName;\n }\n if (typeof this.lastName !== 'undefined') {\n toReturn['lastName'] = this.lastName;\n }\n if (typeof this.email !== 'undefined') {\n toReturn['email'] = this.email;\n }\n if (typeof this.phoneNumber !== 'undefined') {\n toReturn['phoneNumber'] = this.phoneNumber;\n }\n if (typeof this.userId !== 'undefined') {\n toReturn['userId'] = this.userId;\n }\n if (typeof this.countryCode !== 'undefined') {\n toReturn['countryCode'] = this.countryCode;\n }\n if (typeof this.marketId !== 'undefined') {\n toReturn['marketId'] = this.marketId;\n }\n if (typeof this.photoUrlHttps !== 'undefined') {\n toReturn['photoUrlHttps'] = this.photoUrlHttps;\n }\n if (typeof this.lastLogin !== 'undefined' && this.lastLogin !== null) {\n toReturn['lastLogin'] = 'toApiJson' in this.lastLogin ? this.lastLogin.toApiJson() : this.lastLogin;\n }\n if (typeof this.jobTitle !== 'undefined') {\n toReturn['jobTitle'] = this.jobTitle;\n }\n if (typeof this.isSalesManager !== 'undefined') {\n toReturn['isSalesManager'] = this.isSalesManager;\n }\n if (typeof this.meetingBookingUrl !== 'undefined') {\n toReturn['meetingBookingUrl'] = this.meetingBookingUrl;\n }\n return toReturn;\n }\n}\nfunction enumStringToValue$c(enumRef, value) {\n if (typeof value === 'number') {\n return value;\n }\n return enumRef[value];\n}\nclass FieldMask {\n static fromProto(proto) {\n let m = new FieldMask();\n m = Object.assign(m, proto);\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.paths !== 'undefined') {\n toReturn['paths'] = this.paths;\n }\n return toReturn;\n }\n}\nfunction enumStringToValue$b(enumRef, value) {\n if (typeof value === 'number') {\n return value;\n }\n return enumRef[value];\n}\nclass Access {\n static fromProto(proto) {\n let m = new Access();\n m = Object.assign(m, proto);\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.scope !== 'undefined') {\n toReturn['scope'] = this.scope;\n }\n if (typeof this.public !== 'undefined') {\n toReturn['public'] = this.public;\n }\n return toReturn;\n }\n}\nfunction enumStringToValue$a(enumRef, value) {\n if (typeof value === 'number') {\n return value;\n }\n return enumRef[value];\n}\nclass AccountGroup {\n static fromProto(proto) {\n let m = new AccountGroup();\n m = Object.assign(m, proto);\n if (proto.napData) {\n m.napData = NAPData.fromProto(proto.napData);\n }\n if (proto.externalIdentifiers) {\n m.externalIdentifiers = ExternalIdentifiers.fromProto(proto.externalIdentifiers);\n }\n if (proto.contactDetails) {\n m.contactDetails = ContactDetails.fromProto(proto.contactDetails);\n }\n if (proto.salesperson) {\n m.salesperson = Salesperson.fromProto(proto.salesperson);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.accountGroupId !== 'undefined') {\n toReturn['accountGroupId'] = this.accountGroupId;\n }\n if (typeof this.napData !== 'undefined' && this.napData !== null) {\n toReturn['napData'] = 'toApiJson' in this.napData ? this.napData.toApiJson() : this.napData;\n }\n if (typeof this.externalIdentifiers !== 'undefined' && this.externalIdentifiers !== null) {\n toReturn['externalIdentifiers'] = 'toApiJson' in this.externalIdentifiers ? this.externalIdentifiers.toApiJson() : this.externalIdentifiers;\n }\n if (typeof this.contactDetails !== 'undefined' && this.contactDetails !== null) {\n toReturn['contactDetails'] = 'toApiJson' in this.contactDetails ? this.contactDetails.toApiJson() : this.contactDetails;\n }\n if (typeof this.salesperson !== 'undefined' && this.salesperson !== null) {\n toReturn['salesperson'] = 'toApiJson' in this.salesperson ? this.salesperson.toApiJson() : this.salesperson;\n }\n return toReturn;\n }\n}\nclass ListCommitmentDatesResponseCommitmentDateEntry {\n static fromProto(proto) {\n let m = new ListCommitmentDatesResponseCommitmentDateEntry();\n m = Object.assign(m, proto);\n if (proto.value) {\n m.value = new Date(proto.value);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.key !== 'undefined') {\n toReturn['key'] = this.key;\n }\n if (typeof this.value !== 'undefined' && this.value !== null) {\n toReturn['value'] = 'toApiJson' in this.value ? this.value.toApiJson() : this.value;\n }\n return toReturn;\n }\n}\nclass ConciergeAccount {\n static fromProto(proto) {\n let m = new ConciergeAccount();\n m = Object.assign(m, proto);\n if (proto.created) {\n m.created = new Date(proto.created);\n }\n if (proto.updated) {\n m.updated = new Date(proto.updated);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.partnerId !== 'undefined') {\n toReturn['partnerId'] = this.partnerId;\n }\n if (typeof this.accountGroupId !== 'undefined') {\n toReturn['accountGroupId'] = this.accountGroupId;\n }\n if (typeof this.conciergeAccountId !== 'undefined') {\n toReturn['conciergeAccountId'] = this.conciergeAccountId;\n }\n if (typeof this.assignee !== 'undefined') {\n toReturn['assignee'] = this.assignee;\n }\n if (typeof this.notes !== 'undefined') {\n toReturn['notes'] = this.notes;\n }\n if (typeof this.isCollectingTasks !== 'undefined') {\n toReturn['isCollectingTasks'] = this.isCollectingTasks;\n }\n if (typeof this.isBilling !== 'undefined') {\n toReturn['isBilling'] = this.isBilling;\n }\n if (typeof this.qaTasksEnabled !== 'undefined') {\n toReturn['qaTasksEnabled'] = this.qaTasksEnabled;\n }\n if (typeof this.created !== 'undefined' && this.created !== null) {\n toReturn['created'] = 'toApiJson' in this.created ? this.created.toApiJson() : this.created;\n }\n if (typeof this.updated !== 'undefined' && this.updated !== null) {\n toReturn['updated'] = 'toApiJson' in this.updated ? this.updated.toApiJson() : this.updated;\n }\n if (typeof this.market !== 'undefined') {\n toReturn['market'] = this.market;\n }\n if (typeof this.website !== 'undefined') {\n toReturn['website'] = this.website;\n }\n if (typeof this.contactName !== 'undefined') {\n toReturn['contactName'] = this.contactName;\n }\n if (typeof this.willDeactivate !== 'undefined') {\n toReturn['willDeactivate'] = this.willDeactivate;\n }\n return toReturn;\n }\n}\nclass ContactDetails {\n static fromProto(proto) {\n let m = new ContactDetails();\n m = Object.assign(m, proto);\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.firstName !== 'undefined') {\n toReturn['firstName'] = this.firstName;\n }\n if (typeof this.lastName !== 'undefined') {\n toReturn['lastName'] = this.lastName;\n }\n if (typeof this.email !== 'undefined') {\n toReturn['email'] = this.email;\n }\n if (typeof this.phoneNumber !== 'undefined') {\n toReturn['phoneNumber'] = this.phoneNumber;\n }\n return toReturn;\n }\n}\nclass CreateConciergeAccountRequest {\n static fromProto(proto) {\n let m = new CreateConciergeAccountRequest();\n m = Object.assign(m, proto);\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.accountGroupId !== 'undefined') {\n toReturn['accountGroupId'] = this.accountGroupId;\n }\n if (typeof this.partnerId !== 'undefined') {\n toReturn['partnerId'] = this.partnerId;\n }\n if (typeof this.fulfillingPartnerId !== 'undefined') {\n toReturn['fulfillingPartnerId'] = this.fulfillingPartnerId;\n }\n return toReturn;\n }\n}\nclass DeactivateConciergeAccountRequest {\n static fromProto(proto) {\n let m = new DeactivateConciergeAccountRequest();\n m = Object.assign(m, proto);\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.accountGroupId !== 'undefined') {\n toReturn['accountGroupId'] = this.accountGroupId;\n }\n if (typeof this.partnerId !== 'undefined') {\n toReturn['partnerId'] = this.partnerId;\n }\n return toReturn;\n }\n}\nclass ExternalIdentifiers {\n static fromProto(proto) {\n let m = new ExternalIdentifiers();\n m = Object.assign(m, proto);\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.origin !== 'undefined') {\n toReturn['origin'] = this.origin;\n }\n if (typeof this.jobId !== 'undefined') {\n toReturn['jobId'] = this.jobId;\n }\n if (typeof this.customerIdentifier !== 'undefined') {\n toReturn['customerIdentifier'] = this.customerIdentifier;\n }\n if (typeof this.tags !== 'undefined') {\n toReturn['tags'] = this.tags;\n }\n if (typeof this.actionLists !== 'undefined') {\n toReturn['actionLists'] = this.actionLists;\n }\n if (typeof this.socialProfileId !== 'undefined') {\n toReturn['socialProfileId'] = this.socialProfileId;\n }\n if (typeof this.partnerId !== 'undefined') {\n toReturn['partnerId'] = this.partnerId;\n }\n if (typeof this.marketId !== 'undefined') {\n toReturn['marketId'] = this.marketId;\n }\n if (typeof this.taxIds !== 'undefined') {\n toReturn['taxIds'] = this.taxIds;\n }\n if (typeof this.salesPersonId !== 'undefined') {\n toReturn['salesPersonId'] = this.salesPersonId;\n }\n return toReturn;\n }\n}\nclass GetAccountListingSourcesSettingsRequest {\n static fromProto(proto) {\n let m = new GetAccountListingSourcesSettingsRequest();\n m = Object.assign(m, proto);\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.partnerId !== 'undefined') {\n toReturn['partnerId'] = this.partnerId;\n }\n if (typeof this.accountGroupId !== 'undefined') {\n toReturn['accountGroupId'] = this.accountGroupId;\n }\n return toReturn;\n }\n}\nclass GetPurchasingPartnerAccountRequest {\n static fromProto(proto) {\n let m = new GetPurchasingPartnerAccountRequest();\n m = Object.assign(m, proto);\n if (proto.fieldMask) {\n m.fieldMask = FieldMask.fromProto(proto.fieldMask);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.purchasingPartnerId !== 'undefined') {\n toReturn['purchasingPartnerId'] = this.purchasingPartnerId;\n }\n if (typeof this.accountGroupId !== 'undefined') {\n toReturn['accountGroupId'] = this.accountGroupId;\n }\n if (typeof this.fieldMask !== 'undefined' && this.fieldMask !== null) {\n toReturn['fieldMask'] = 'toApiJson' in this.fieldMask ? this.fieldMask.toApiJson() : this.fieldMask;\n }\n return toReturn;\n }\n}\nclass GetPurchasingPartnerAccountResponse {\n static fromProto(proto) {\n let m = new GetPurchasingPartnerAccountResponse();\n m = Object.assign(m, proto);\n if (proto.accountGroup) {\n m.accountGroup = AccountGroup.fromProto(proto.accountGroup);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.accountGroup !== 'undefined' && this.accountGroup !== null) {\n toReturn['accountGroup'] = 'toApiJson' in this.accountGroup ? this.accountGroup.toApiJson() : this.accountGroup;\n }\n return toReturn;\n }\n}\nclass GetPurchasingPartnerConciergeAccountRequest {\n static fromProto(proto) {\n let m = new GetPurchasingPartnerConciergeAccountRequest();\n m = Object.assign(m, proto);\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.purchasingPartnerId !== 'undefined') {\n toReturn['purchasingPartnerId'] = this.purchasingPartnerId;\n }\n if (typeof this.accountGroupId !== 'undefined') {\n toReturn['accountGroupId'] = this.accountGroupId;\n }\n return toReturn;\n }\n}\nclass GetPurchasingPartnerConciergeAccountResponse {\n static fromProto(proto) {\n let m = new GetPurchasingPartnerConciergeAccountResponse();\n m = Object.assign(m, proto);\n if (proto.conciergeAccount) {\n m.conciergeAccount = ConciergeAccount.fromProto(proto.conciergeAccount);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.conciergeAccount !== 'undefined' && this.conciergeAccount !== null) {\n toReturn['conciergeAccount'] = 'toApiJson' in this.conciergeAccount ? this.conciergeAccount.toApiJson() : this.conciergeAccount;\n }\n return toReturn;\n }\n}\nclass GetSalesOrderFormSubmissionInfoRequest {\n static fromProto(proto) {\n let m = new GetSalesOrderFormSubmissionInfoRequest();\n m = Object.assign(m, proto);\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.accountGroupId !== 'undefined') {\n toReturn['accountGroupId'] = this.accountGroupId;\n }\n if (typeof this.partnerId !== 'undefined') {\n toReturn['partnerId'] = this.partnerId;\n }\n if (typeof this.fulfillingPartnerId !== 'undefined') {\n toReturn['fulfillingPartnerId'] = this.fulfillingPartnerId;\n }\n if (typeof this.orderFormSubmissionId !== 'undefined') {\n toReturn['orderFormSubmissionId'] = this.orderFormSubmissionId;\n }\n return toReturn;\n }\n}\nclass GetSalesOrderFormSubmissionInfoResponse {\n static fromProto(proto) {\n let m = new GetSalesOrderFormSubmissionInfoResponse();\n m = Object.assign(m, proto);\n if (proto.commonFields) {\n m.commonFields = proto.commonFields.map(SalesOrderFormSubmissionField.fromProto);\n }\n if (proto.customFields) {\n m.customFields = proto.customFields.map(SalesOrderFormSubmissionField.fromProto);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.orderFormSubmissionId !== 'undefined') {\n toReturn['orderFormSubmissionId'] = this.orderFormSubmissionId;\n }\n if (typeof this.productId !== 'undefined') {\n toReturn['productId'] = this.productId;\n }\n if (typeof this.accountGroupId !== 'undefined') {\n toReturn['accountGroupId'] = this.accountGroupId;\n }\n if (typeof this.partnerId !== 'undefined') {\n toReturn['partnerId'] = this.partnerId;\n }\n if (typeof this.commonFields !== 'undefined' && this.commonFields !== null) {\n toReturn['commonFields'] = 'toApiJson' in this.commonFields ? this.commonFields.toApiJson() : this.commonFields;\n }\n if (typeof this.customFields !== 'undefined' && this.customFields !== null) {\n toReturn['customFields'] = 'toApiJson' in this.customFields ? this.customFields.toApiJson() : this.customFields;\n }\n return toReturn;\n }\n}\nclass GetTaskAccountsRequest {\n static fromProto(proto) {\n let m = new GetTaskAccountsRequest();\n m = Object.assign(m, proto);\n if (proto.identities) {\n m.identities = proto.identities.map(TaskIdentity.fromProto);\n }\n if (proto.fieldMask) {\n m.fieldMask = FieldMask.fromProto(proto.fieldMask);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.identities !== 'undefined' && this.identities !== null) {\n toReturn['identities'] = 'toApiJson' in this.identities ? this.identities.toApiJson() : this.identities;\n }\n if (typeof this.fieldMask !== 'undefined' && this.fieldMask !== null) {\n toReturn['fieldMask'] = 'toApiJson' in this.fieldMask ? this.fieldMask.toApiJson() : this.fieldMask;\n }\n return toReturn;\n }\n}\nclass GetTaskAccountsResponse {\n static fromProto(proto) {\n let m = new GetTaskAccountsResponse();\n m = Object.assign(m, proto);\n if (proto.accounts) {\n m.accounts = proto.accounts.map(AccountGroup.fromProto);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.accounts !== 'undefined' && this.accounts !== null) {\n toReturn['accounts'] = 'toApiJson' in this.accounts ? this.accounts.toApiJson() : this.accounts;\n }\n return toReturn;\n }\n}\nclass GetTaskConciergeAccountRequest {\n static fromProto(proto) {\n let m = new GetTaskConciergeAccountRequest();\n m = Object.assign(m, proto);\n if (proto.identity) {\n m.identity = TaskIdentity.fromProto(proto.identity);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.identity !== 'undefined' && this.identity !== null) {\n toReturn['identity'] = 'toApiJson' in this.identity ? this.identity.toApiJson() : this.identity;\n }\n return toReturn;\n }\n}\nclass GetTaskConciergeAccountResponse {\n static fromProto(proto) {\n let m = new GetTaskConciergeAccountResponse();\n m = Object.assign(m, proto);\n if (proto.conciergeAccount) {\n m.conciergeAccount = ConciergeAccount.fromProto(proto.conciergeAccount);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.conciergeAccount !== 'undefined' && this.conciergeAccount !== null) {\n toReturn['conciergeAccount'] = 'toApiJson' in this.conciergeAccount ? this.conciergeAccount.toApiJson() : this.conciergeAccount;\n }\n return toReturn;\n }\n}\nclass ListAccountSocialServicesRequest {\n static fromProto(proto) {\n let m = new ListAccountSocialServicesRequest();\n m = Object.assign(m, proto);\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.accountGroupId !== 'undefined') {\n toReturn['accountGroupId'] = this.accountGroupId;\n }\n if (typeof this.partnerId !== 'undefined') {\n toReturn['partnerId'] = this.partnerId;\n }\n if (typeof this.fulfillingPartnerId !== 'undefined') {\n toReturn['fulfillingPartnerId'] = this.fulfillingPartnerId;\n }\n return toReturn;\n }\n}\nclass ListAccountSocialServicesResponse {\n static fromProto(proto) {\n let m = new ListAccountSocialServicesResponse();\n m = Object.assign(m, proto);\n if (proto.socialServices) {\n m.socialServices = proto.socialServices.map(v => enumStringToValue$a(AccountSocialService, v));\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.socialServices !== 'undefined') {\n toReturn['socialServices'] = this.socialServices;\n }\n return toReturn;\n }\n}\nclass ListCommitmentDatesRequest {\n static fromProto(proto) {\n let m = new ListCommitmentDatesRequest();\n m = Object.assign(m, proto);\n if (proto.pagingOptions) {\n m.pagingOptions = PagedRequestOptions.fromProto(proto.pagingOptions);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.accountGroupId !== 'undefined') {\n toReturn['accountGroupId'] = this.accountGroupId;\n }\n if (typeof this.partnerId !== 'undefined') {\n toReturn['partnerId'] = this.partnerId;\n }\n if (typeof this.fulfillingPartnerId !== 'undefined') {\n toReturn['fulfillingPartnerId'] = this.fulfillingPartnerId;\n }\n if (typeof this.pagingOptions !== 'undefined' && this.pagingOptions !== null) {\n toReturn['pagingOptions'] = 'toApiJson' in this.pagingOptions ? this.pagingOptions.toApiJson() : this.pagingOptions;\n }\n return toReturn;\n }\n}\nclass ListCommitmentDatesResponse {\n static fromProto(proto) {\n let m = new ListCommitmentDatesResponse();\n m = Object.assign(m, proto);\n if (proto.commitmentDate) {\n m.commitmentDate = Object.keys(proto.commitmentDate).reduce((obj, k) => {\n obj[k] = new Date(proto.commitmentDate[k]);\n return obj;\n }, {});\n }\n if (proto.pagingMetadata) {\n m.pagingMetadata = PagedResponseMetadata.fromProto(proto.pagingMetadata);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.commitmentDate !== 'undefined' && this.commitmentDate !== null) {\n toReturn['commitmentDate'] = 'toApiJson' in this.commitmentDate ? this.commitmentDate.toApiJson() : this.commitmentDate;\n }\n if (typeof this.pagingMetadata !== 'undefined' && this.pagingMetadata !== null) {\n toReturn['pagingMetadata'] = 'toApiJson' in this.pagingMetadata ? this.pagingMetadata.toApiJson() : this.pagingMetadata;\n }\n return toReturn;\n }\n}\nclass NAPData {\n static fromProto(proto) {\n let m = new NAPData();\n m = Object.assign(m, proto);\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.companyName !== 'undefined') {\n toReturn['companyName'] = this.companyName;\n }\n if (typeof this.address !== 'undefined') {\n toReturn['address'] = this.address;\n }\n if (typeof this.address2 !== 'undefined') {\n toReturn['address2'] = this.address2;\n }\n if (typeof this.city !== 'undefined') {\n toReturn['city'] = this.city;\n }\n if (typeof this.state !== 'undefined') {\n toReturn['state'] = this.state;\n }\n if (typeof this.zip !== 'undefined') {\n toReturn['zip'] = this.zip;\n }\n if (typeof this.country !== 'undefined') {\n toReturn['country'] = this.country;\n }\n if (typeof this.website !== 'undefined') {\n toReturn['website'] = this.website;\n }\n if (typeof this.workNumber !== 'undefined') {\n toReturn['workNumber'] = this.workNumber;\n }\n if (typeof this.callTrackingNumber !== 'undefined') {\n toReturn['callTrackingNumber'] = this.callTrackingNumber;\n }\n if (typeof this.timezone !== 'undefined') {\n toReturn['timezone'] = this.timezone;\n }\n if (typeof this.serviceAreaBusiness !== 'undefined') {\n toReturn['serviceAreaBusiness'] = this.serviceAreaBusiness;\n }\n return toReturn;\n }\n}\nclass PauseConciergeAccountRequest {\n static fromProto(proto) {\n let m = new PauseConciergeAccountRequest();\n m = Object.assign(m, proto);\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.accountGroupId !== 'undefined') {\n toReturn['accountGroupId'] = this.accountGroupId;\n }\n if (typeof this.partnerId !== 'undefined') {\n toReturn['partnerId'] = this.partnerId;\n }\n return toReturn;\n }\n}\nclass SalesOrderFormSubmissionField {\n static fromProto(proto) {\n let m = new SalesOrderFormSubmissionField();\n m = Object.assign(m, proto);\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.label !== 'undefined') {\n toReturn['label'] = this.label;\n }\n if (typeof this.description !== 'undefined') {\n toReturn['description'] = this.description;\n }\n if (typeof this.answer !== 'undefined') {\n toReturn['answer'] = this.answer;\n }\n if (typeof this.fieldId !== 'undefined') {\n toReturn['fieldId'] = this.fieldId;\n }\n if (typeof this.fieldType !== 'undefined') {\n toReturn['fieldType'] = this.fieldType;\n }\n return toReturn;\n }\n}\nclass SetAccountNoteRequest {\n static fromProto(proto) {\n let m = new SetAccountNoteRequest();\n m = Object.assign(m, proto);\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.partnerId !== 'undefined') {\n toReturn['partnerId'] = this.partnerId;\n }\n if (typeof this.accountGroupId !== 'undefined') {\n toReturn['accountGroupId'] = this.accountGroupId;\n }\n if (typeof this.note !== 'undefined') {\n toReturn['note'] = this.note;\n }\n return toReturn;\n }\n}\nclass SourceSetting {\n static fromProto(proto) {\n let m = new SourceSetting();\n m = Object.assign(m, proto);\n if (proto.sourceId) {\n m.sourceId = parseInt(proto.sourceId, 10);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.sourceTypeId !== 'undefined') {\n toReturn['sourceTypeId'] = this.sourceTypeId;\n }\n if (typeof this.hasListingsFlag !== 'undefined') {\n toReturn['hasListingsFlag'] = this.hasListingsFlag;\n }\n if (typeof this.iconClass16px !== 'undefined') {\n toReturn['iconClass16px'] = this.iconClass16px;\n }\n if (typeof this.iconClass32px !== 'undefined') {\n toReturn['iconClass32px'] = this.iconClass32px;\n }\n if (typeof this.hasReviewsFlag !== 'undefined') {\n toReturn['hasReviewsFlag'] = this.hasReviewsFlag;\n }\n if (typeof this.name !== 'undefined') {\n toReturn['name'] = this.name;\n }\n if (typeof this.sourceId !== 'undefined') {\n toReturn['sourceId'] = this.sourceId;\n }\n if (typeof this.enabledFlag !== 'undefined') {\n toReturn['enabledFlag'] = this.enabledFlag;\n }\n if (typeof this.visibilityEnabled !== 'undefined') {\n toReturn['visibilityEnabled'] = this.visibilityEnabled;\n }\n if (typeof this.socializeEnabled !== 'undefined') {\n toReturn['socializeEnabled'] = this.socializeEnabled;\n }\n if (typeof this.descriptionHtml !== 'undefined') {\n toReturn['descriptionHtml'] = this.descriptionHtml;\n }\n if (typeof this.reviewsEnabled !== 'undefined') {\n toReturn['reviewsEnabled'] = this.reviewsEnabled;\n }\n if (typeof this.sourceTypeName !== 'undefined') {\n toReturn['sourceTypeName'] = this.sourceTypeName;\n }\n if (typeof this.iconUrl !== 'undefined') {\n toReturn['iconUrl'] = this.iconUrl;\n }\n if (typeof this.iconUrl32px !== 'undefined') {\n toReturn['iconUrl32px'] = this.iconUrl32px;\n }\n if (typeof this.listingsVerified !== 'undefined') {\n toReturn['listingsVerified'] = this.listingsVerified;\n }\n if (typeof this.anchorDataWarning !== 'undefined') {\n toReturn['anchorDataWarning'] = this.anchorDataWarning;\n }\n return toReturn;\n }\n}\nclass SourceSettingsResponse {\n static fromProto(proto) {\n let m = new SourceSettingsResponse();\n m = Object.assign(m, proto);\n if (proto.sourceSettings) {\n m.sourceSettings = proto.sourceSettings.map(SourceSetting.fromProto);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.sourceSettings !== 'undefined' && this.sourceSettings !== null) {\n toReturn['sourceSettings'] = 'toApiJson' in this.sourceSettings ? this.sourceSettings.toApiJson() : this.sourceSettings;\n }\n return toReturn;\n }\n}\nclass UpdateAccountListingSourceRequest {\n static fromProto(proto) {\n let m = new UpdateAccountListingSourceRequest();\n m = Object.assign(m, proto);\n if (proto.sourceId) {\n m.sourceId = parseInt(proto.sourceId, 10);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.partnerId !== 'undefined') {\n toReturn['partnerId'] = this.partnerId;\n }\n if (typeof this.accountGroupId !== 'undefined') {\n toReturn['accountGroupId'] = this.accountGroupId;\n }\n if (typeof this.category !== 'undefined') {\n toReturn['category'] = this.category;\n }\n if (typeof this.enabled !== 'undefined') {\n toReturn['enabled'] = this.enabled;\n }\n if (typeof this.sourceId !== 'undefined') {\n toReturn['sourceId'] = this.sourceId;\n }\n return toReturn;\n }\n}\nclass UpdateAccountMultiListingSourceRequest {\n static fromProto(proto) {\n let m = new UpdateAccountMultiListingSourceRequest();\n m = Object.assign(m, proto);\n if (proto.sourceIds) {\n m.sourceIds = proto.sourceIds.map(i => parseInt(i, 10));\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.partnerId !== 'undefined') {\n toReturn['partnerId'] = this.partnerId;\n }\n if (typeof this.accountGroupId !== 'undefined') {\n toReturn['accountGroupId'] = this.accountGroupId;\n }\n if (typeof this.category !== 'undefined') {\n toReturn['category'] = this.category;\n }\n if (typeof this.enabled !== 'undefined') {\n toReturn['enabled'] = this.enabled;\n }\n if (typeof this.sourceIds !== 'undefined') {\n toReturn['sourceIds'] = this.sourceIds;\n }\n return toReturn;\n }\n}\nfunction enumStringToValue$9(enumRef, value) {\n if (typeof value === 'number') {\n return value;\n }\n return enumRef[value];\n}\nclass GetOwnedAppIDsByPartnerIDRequest {\n static fromProto(proto) {\n let m = new GetOwnedAppIDsByPartnerIDRequest();\n m = Object.assign(m, proto);\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.partnerId !== 'undefined') {\n toReturn['partnerId'] = this.partnerId;\n }\n return toReturn;\n }\n}\nclass GetOwnedAppIDsByPartnerIDResponse {\n static fromProto(proto) {\n let m = new GetOwnedAppIDsByPartnerIDResponse();\n m = Object.assign(m, proto);\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.appIds !== 'undefined') {\n toReturn['appIds'] = this.appIds;\n }\n return toReturn;\n }\n}\nclass ListAccountsRequest {\n static fromProto(proto) {\n let m = new ListAccountsRequest();\n m = Object.assign(m, proto);\n if (proto.pagingOptions) {\n m.pagingOptions = PagedRequestOptions.fromProto(proto.pagingOptions);\n }\n if (proto.productFilterOperator) {\n m.productFilterOperator = enumStringToValue$9(ProductFilterOperator, proto.productFilterOperator);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.productIds !== 'undefined') {\n toReturn['productIds'] = this.productIds;\n }\n if (typeof this.searchTerm !== 'undefined') {\n toReturn['searchTerm'] = this.searchTerm;\n }\n if (typeof this.pagingOptions !== 'undefined' && this.pagingOptions !== null) {\n toReturn['pagingOptions'] = 'toApiJson' in this.pagingOptions ? this.pagingOptions.toApiJson() : this.pagingOptions;\n }\n if (typeof this.productFilterOperator !== 'undefined') {\n toReturn['productFilterOperator'] = this.productFilterOperator;\n }\n if (typeof this.partnerId !== 'undefined') {\n toReturn['partnerId'] = this.partnerId;\n }\n return toReturn;\n }\n}\nclass ListAccountsResponse {\n static fromProto(proto) {\n let m = new ListAccountsResponse();\n m = Object.assign(m, proto);\n if (proto.businesses) {\n m.businesses = proto.businesses.map(AccountGroup.fromProto);\n }\n if (proto.pagingMetadata) {\n m.pagingMetadata = PagedResponseMetadata.fromProto(proto.pagingMetadata);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.businesses !== 'undefined' && this.businesses !== null) {\n toReturn['businesses'] = 'toApiJson' in this.businesses ? this.businesses.toApiJson() : this.businesses;\n }\n if (typeof this.pagingMetadata !== 'undefined' && this.pagingMetadata !== null) {\n toReturn['pagingMetadata'] = 'toApiJson' in this.pagingMetadata ? this.pagingMetadata.toApiJson() : this.pagingMetadata;\n }\n return toReturn;\n }\n}\nfunction enumStringToValue$8(enumRef, value) {\n if (typeof value === 'number') {\n return value;\n }\n return enumRef[value];\n}\nclass GetAccountProductDetailsRequest {\n static fromProto(proto) {\n let m = new GetAccountProductDetailsRequest();\n m = Object.assign(m, proto);\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.partnerId !== 'undefined') {\n toReturn['partnerId'] = this.partnerId;\n }\n if (typeof this.accountGroupId !== 'undefined') {\n toReturn['accountGroupId'] = this.accountGroupId;\n }\n return toReturn;\n }\n}\nclass GetAccountProductDetailsResponse {\n static fromProto(proto) {\n let m = new GetAccountProductDetailsResponse();\n m = Object.assign(m, proto);\n if (proto.productDetails) {\n m.productDetails = proto.productDetails.map(ProductDetails.fromProto);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.productDetails !== 'undefined' && this.productDetails !== null) {\n toReturn['productDetails'] = 'toApiJson' in this.productDetails ? this.productDetails.toApiJson() : this.productDetails;\n }\n return toReturn;\n }\n}\nclass GetAccountVendorProductDetailsRequest {\n static fromProto(proto) {\n let m = new GetAccountVendorProductDetailsRequest();\n m = Object.assign(m, proto);\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.partnerId !== 'undefined') {\n toReturn['partnerId'] = this.partnerId;\n }\n if (typeof this.accountGroupId !== 'undefined') {\n toReturn['accountGroupId'] = this.accountGroupId;\n }\n if (typeof this.fulfillingPartnerId !== 'undefined') {\n toReturn['fulfillingPartnerId'] = this.fulfillingPartnerId;\n }\n return toReturn;\n }\n}\nclass ListProductsRequest {\n static fromProto(proto) {\n let m = new ListProductsRequest();\n m = Object.assign(m, proto);\n if (proto.pagingOptions) {\n m.pagingOptions = PagedRequestOptions.fromProto(proto.pagingOptions);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.pagingOptions !== 'undefined' && this.pagingOptions !== null) {\n toReturn['pagingOptions'] = 'toApiJson' in this.pagingOptions ? this.pagingOptions.toApiJson() : this.pagingOptions;\n }\n return toReturn;\n }\n}\nclass ListProductsResponse {\n static fromProto(proto) {\n let m = new ListProductsResponse();\n m = Object.assign(m, proto);\n if (proto.product) {\n m.product = proto.product.map(Product.fromProto);\n }\n if (proto.pagingMetadata) {\n m.pagingMetadata = PagedResponseMetadata.fromProto(proto.pagingMetadata);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.product !== 'undefined' && this.product !== null) {\n toReturn['product'] = 'toApiJson' in this.product ? this.product.toApiJson() : this.product;\n }\n if (typeof this.pagingMetadata !== 'undefined' && this.pagingMetadata !== null) {\n toReturn['pagingMetadata'] = 'toApiJson' in this.pagingMetadata ? this.pagingMetadata.toApiJson() : this.pagingMetadata;\n }\n return toReturn;\n }\n}\nclass Product {\n static fromProto(proto) {\n let m = new Product();\n m = Object.assign(m, proto);\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.productId !== 'undefined') {\n toReturn['productId'] = this.productId;\n }\n if (typeof this.productIcon !== 'undefined') {\n toReturn['productIcon'] = this.productIcon;\n }\n if (typeof this.productName !== 'undefined') {\n toReturn['productName'] = this.productName;\n }\n if (typeof this.isActive !== 'undefined') {\n toReturn['isActive'] = this.isActive;\n }\n return toReturn;\n }\n}\nclass ProductDetails {\n static fromProto(proto) {\n let m = new ProductDetails();\n m = Object.assign(m, proto);\n if (proto.status) {\n m.status = parseInt(proto.status, 10);\n }\n if (proto.count) {\n m.count = parseInt(proto.count, 10);\n }\n if (proto.activationDate) {\n m.activationDate = new Date(proto.activationDate);\n }\n if (proto.commitmentDate) {\n m.commitmentDate = new Date(proto.commitmentDate);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.productId !== 'undefined') {\n toReturn['productId'] = this.productId;\n }\n if (typeof this.productName !== 'undefined') {\n toReturn['productName'] = this.productName;\n }\n if (typeof this.isActive !== 'undefined') {\n toReturn['isActive'] = this.isActive;\n }\n if (typeof this.isExpired !== 'undefined') {\n toReturn['isExpired'] = this.isExpired;\n }\n if (typeof this.isTrial !== 'undefined') {\n toReturn['isTrial'] = this.isTrial;\n }\n if (typeof this.ssoEnabled !== 'undefined') {\n toReturn['ssoEnabled'] = this.ssoEnabled;\n }\n if (typeof this.iconUrl !== 'undefined') {\n toReturn['iconUrl'] = this.iconUrl;\n }\n if (typeof this.status !== 'undefined') {\n toReturn['status'] = this.status;\n }\n if (typeof this.count !== 'undefined') {\n toReturn['count'] = this.count;\n }\n if (typeof this.activationDate !== 'undefined' && this.activationDate !== null) {\n toReturn['activationDate'] = 'toApiJson' in this.activationDate ? this.activationDate.toApiJson() : this.activationDate;\n }\n if (typeof this.commitmentDate !== 'undefined' && this.commitmentDate !== null) {\n toReturn['commitmentDate'] = 'toApiJson' in this.commitmentDate ? this.commitmentDate.toApiJson() : this.commitmentDate;\n }\n return toReturn;\n }\n}\nfunction enumStringToValue$7(enumRef, value) {\n if (typeof value === 'number') {\n return value;\n }\n return enumRef[value];\n}\nclass ChildNode {\n static fromProto(proto) {\n let m = new ChildNode();\n m = Object.assign(m, proto);\n if (proto.operatorNode) {\n m.operatorNode = OperatorNode.fromProto(proto.operatorNode);\n }\n if (proto.filters) {\n m.filters = Filters.fromProto(proto.filters);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.operatorNode !== 'undefined' && this.operatorNode !== null) {\n toReturn['operatorNode'] = 'toApiJson' in this.operatorNode ? this.operatorNode.toApiJson() : this.operatorNode;\n }\n if (typeof this.filters !== 'undefined' && this.filters !== null) {\n toReturn['filters'] = 'toApiJson' in this.filters ? this.filters.toApiJson() : this.filters;\n }\n return toReturn;\n }\n}\nclass DateFilter {\n static fromProto(proto) {\n let m = new DateFilter();\n m = Object.assign(m, proto);\n if (proto.field) {\n m.field = enumStringToValue$7(DateField, proto.field);\n }\n if (proto.rangeStart) {\n m.rangeStart = new Date(proto.rangeStart);\n }\n if (proto.rangeEnd) {\n m.rangeEnd = new Date(proto.rangeEnd);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.field !== 'undefined') {\n toReturn['field'] = this.field;\n }\n if (typeof this.rangeStart !== 'undefined' && this.rangeStart !== null) {\n toReturn['rangeStart'] = 'toApiJson' in this.rangeStart ? this.rangeStart.toApiJson() : this.rangeStart;\n }\n if (typeof this.rangeEnd !== 'undefined' && this.rangeEnd !== null) {\n toReturn['rangeEnd'] = 'toApiJson' in this.rangeEnd ? this.rangeEnd.toApiJson() : this.rangeEnd;\n }\n return toReturn;\n }\n}\nclass Filters {\n static fromProto(proto) {\n let m = new Filters();\n m = Object.assign(m, proto);\n if (proto.dateFilters) {\n m.dateFilters = proto.dateFilters.map(DateFilter.fromProto);\n }\n if (proto.rangeFilters) {\n m.rangeFilters = proto.rangeFilters.map(FuzzyRangeFilter.fromProto);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.fuzzyText !== 'undefined') {\n toReturn['fuzzyText'] = this.fuzzyText;\n }\n if (typeof this.partnerId !== 'undefined') {\n toReturn['partnerId'] = this.partnerId;\n }\n if (typeof this.accountGroupId !== 'undefined') {\n toReturn['accountGroupId'] = this.accountGroupId;\n }\n if (typeof this.fulfillingPartnerId !== 'undefined') {\n toReturn['fulfillingPartnerId'] = this.fulfillingPartnerId;\n }\n if (typeof this.parentTaskIds !== 'undefined') {\n toReturn['parentTaskIds'] = this.parentTaskIds;\n }\n if (typeof this.productId !== 'undefined') {\n toReturn['productId'] = this.productId;\n }\n if (typeof this.orderId !== 'undefined') {\n toReturn['orderId'] = this.orderId;\n }\n if (typeof this.statuses !== 'undefined') {\n toReturn['statuses'] = this.statuses;\n }\n if (typeof this.dateFilters !== 'undefined' && this.dateFilters !== null) {\n toReturn['dateFilters'] = 'toApiJson' in this.dateFilters ? this.dateFilters.toApiJson() : this.dateFilters;\n }\n if (typeof this.types !== 'undefined') {\n toReturn['types'] = this.types;\n }\n if (typeof this.tags !== 'undefined') {\n toReturn['tags'] = this.tags;\n }\n if (typeof this.customTags !== 'undefined') {\n toReturn['customTags'] = this.customTags;\n }\n if (typeof this.assigneeIds !== 'undefined') {\n toReturn['assigneeIds'] = this.assigneeIds;\n }\n if (typeof this.taskIds !== 'undefined') {\n toReturn['taskIds'] = this.taskIds;\n }\n if (typeof this.customTagIds !== 'undefined') {\n toReturn['customTagIds'] = this.customTagIds;\n }\n if (typeof this.rangeFilters !== 'undefined' && this.rangeFilters !== null) {\n toReturn['rangeFilters'] = 'toApiJson' in this.rangeFilters ? this.rangeFilters.toApiJson() : this.rangeFilters;\n }\n return toReturn;\n }\n}\nclass FuzzyRangeFilter {\n static fromProto(proto) {\n let m = new FuzzyRangeFilter();\n m = Object.assign(m, proto);\n if (proto.field) {\n m.field = enumStringToValue$7(FuzzyRangeField, proto.field);\n }\n if (proto.rangeStart) {\n m.rangeStart = parseInt(proto.rangeStart, 10);\n }\n if (proto.rangeEnd) {\n m.rangeEnd = parseInt(proto.rangeEnd, 10);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.field !== 'undefined') {\n toReturn['field'] = this.field;\n }\n if (typeof this.rangeStart !== 'undefined') {\n toReturn['rangeStart'] = this.rangeStart;\n }\n if (typeof this.rangeEnd !== 'undefined') {\n toReturn['rangeEnd'] = this.rangeEnd;\n }\n return toReturn;\n }\n}\nclass FuzzySort {\n static fromProto(proto) {\n let m = new FuzzySort();\n m = Object.assign(m, proto);\n if (proto.direction) {\n m.direction = enumStringToValue$7(FuzzySortDirection, proto.direction);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.field !== 'undefined') {\n toReturn['field'] = this.field;\n }\n if (typeof this.direction !== 'undefined') {\n toReturn['direction'] = this.direction;\n }\n return toReturn;\n }\n}\nclass FuzzyTaskSearchRequest {\n static fromProto(proto) {\n let m = new FuzzyTaskSearchRequest();\n m = Object.assign(m, proto);\n if (proto.root) {\n m.root = OperatorNode.fromProto(proto.root);\n }\n if (proto.pagingOptions) {\n m.pagingOptions = PagedRequestOptions.fromProto(proto.pagingOptions);\n }\n if (proto.sorts) {\n m.sorts = proto.sorts.map(FuzzySort.fromProto);\n }\n if (proto.projectionFilter) {\n m.projectionFilter = ProjectionFilter.fromProto(proto.projectionFilter);\n }\n if (proto.runtimeFields) {\n m.runtimeFields = proto.runtimeFields.map(v => enumStringToValue$7(RuntimeField, v));\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.root !== 'undefined' && this.root !== null) {\n toReturn['root'] = 'toApiJson' in this.root ? this.root.toApiJson() : this.root;\n }\n if (typeof this.pagingOptions !== 'undefined' && this.pagingOptions !== null) {\n toReturn['pagingOptions'] = 'toApiJson' in this.pagingOptions ? this.pagingOptions.toApiJson() : this.pagingOptions;\n }\n if (typeof this.sorts !== 'undefined' && this.sorts !== null) {\n toReturn['sorts'] = 'toApiJson' in this.sorts ? this.sorts.toApiJson() : this.sorts;\n }\n if (typeof this.projectionFilter !== 'undefined' && this.projectionFilter !== null) {\n toReturn['projectionFilter'] = 'toApiJson' in this.projectionFilter ? this.projectionFilter.toApiJson() : this.projectionFilter;\n }\n if (typeof this.runtimeFields !== 'undefined') {\n toReturn['runtimeFields'] = this.runtimeFields;\n }\n return toReturn;\n }\n}\nclass FuzzyTaskSearchResponse {\n static fromProto(proto) {\n let m = new FuzzyTaskSearchResponse();\n m = Object.assign(m, proto);\n if (proto.tasks) {\n m.tasks = proto.tasks.map(Task.fromProto);\n }\n if (proto.pagingMetadata) {\n m.pagingMetadata = PagedResponseMetadata.fromProto(proto.pagingMetadata);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.tasks !== 'undefined' && this.tasks !== null) {\n toReturn['tasks'] = 'toApiJson' in this.tasks ? this.tasks.toApiJson() : this.tasks;\n }\n if (typeof this.pagingMetadata !== 'undefined' && this.pagingMetadata !== null) {\n toReturn['pagingMetadata'] = 'toApiJson' in this.pagingMetadata ? this.pagingMetadata.toApiJson() : this.pagingMetadata;\n }\n return toReturn;\n }\n}\nclass OperatorNode {\n static fromProto(proto) {\n let m = new OperatorNode();\n m = Object.assign(m, proto);\n if (proto.operator) {\n m.operator = enumStringToValue$7(Operator, proto.operator);\n }\n if (proto.children) {\n m.children = proto.children.map(ChildNode.fromProto);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.operator !== 'undefined') {\n toReturn['operator'] = this.operator;\n }\n if (typeof this.children !== 'undefined' && this.children !== null) {\n toReturn['children'] = 'toApiJson' in this.children ? this.children.toApiJson() : this.children;\n }\n return toReturn;\n }\n}\nclass ProjectionFilter {\n static fromProto(proto) {\n let m = new ProjectionFilter();\n m = Object.assign(m, proto);\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.history !== 'undefined') {\n toReturn['history'] = this.history;\n }\n if (typeof this.deletedOnly !== 'undefined') {\n toReturn['deletedOnly'] = this.deletedOnly;\n }\n return toReturn;\n }\n}\nfunction enumStringToValue$6(enumRef, value) {\n if (typeof value === 'number') {\n return value;\n }\n return enumRef[value];\n}\nclass AccountData {\n static fromProto(proto) {\n let m = new AccountData();\n m = Object.assign(m, proto);\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.accountGroupId !== 'undefined') {\n toReturn['accountGroupId'] = this.accountGroupId;\n }\n if (typeof this.name !== 'undefined') {\n toReturn['name'] = this.name;\n }\n if (typeof this.address !== 'undefined') {\n toReturn['address'] = this.address;\n }\n if (typeof this.phoneNumbers !== 'undefined') {\n toReturn['phoneNumbers'] = this.phoneNumbers;\n }\n if (typeof this.countryCode !== 'undefined') {\n toReturn['countryCode'] = this.countryCode;\n }\n return toReturn;\n }\n}\nclass AccountSalespersonData {\n static fromProto(proto) {\n let m = new AccountSalespersonData();\n m = Object.assign(m, proto);\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.userId !== 'undefined') {\n toReturn['userId'] = this.userId;\n }\n if (typeof this.firstName !== 'undefined') {\n toReturn['firstName'] = this.firstName;\n }\n if (typeof this.lastName !== 'undefined') {\n toReturn['lastName'] = this.lastName;\n }\n if (typeof this.email !== 'undefined') {\n toReturn['email'] = this.email;\n }\n return toReturn;\n }\n}\nclass FuzzySearchHydratedTasksRequest {\n static fromProto(proto) {\n let m = new FuzzySearchHydratedTasksRequest();\n m = Object.assign(m, proto);\n if (proto.request) {\n m.request = FuzzyTaskSearchRequest.fromProto(proto.request);\n }\n if (proto.projectionFilter) {\n m.projectionFilter = HydratedTaskProjectionFilter.fromProto(proto.projectionFilter);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.request !== 'undefined' && this.request !== null) {\n toReturn['request'] = 'toApiJson' in this.request ? this.request.toApiJson() : this.request;\n }\n if (typeof this.projectionFilter !== 'undefined' && this.projectionFilter !== null) {\n toReturn['projectionFilter'] = 'toApiJson' in this.projectionFilter ? this.projectionFilter.toApiJson() : this.projectionFilter;\n }\n return toReturn;\n }\n}\nclass FuzzySearchHydratedTasksResponse {\n static fromProto(proto) {\n let m = new FuzzySearchHydratedTasksResponse();\n m = Object.assign(m, proto);\n if (proto.tasks) {\n m.tasks = proto.tasks.map(HydratedTask.fromProto);\n }\n if (proto.pagingMetadata) {\n m.pagingMetadata = PagedResponseMetadata.fromProto(proto.pagingMetadata);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.tasks !== 'undefined' && this.tasks !== null) {\n toReturn['tasks'] = 'toApiJson' in this.tasks ? this.tasks.toApiJson() : this.tasks;\n }\n if (typeof this.pagingMetadata !== 'undefined' && this.pagingMetadata !== null) {\n toReturn['pagingMetadata'] = 'toApiJson' in this.pagingMetadata ? this.pagingMetadata.toApiJson() : this.pagingMetadata;\n }\n return toReturn;\n }\n}\nclass GetHydratedTaskRequest {\n static fromProto(proto) {\n let m = new GetHydratedTaskRequest();\n m = Object.assign(m, proto);\n if (proto.identity) {\n m.identity = HydratedTaskIdentity.fromProto(proto.identity);\n }\n if (proto.projectionFilter) {\n m.projectionFilter = HydratedTaskProjectionFilter.fromProto(proto.projectionFilter);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.identity !== 'undefined' && this.identity !== null) {\n toReturn['identity'] = 'toApiJson' in this.identity ? this.identity.toApiJson() : this.identity;\n }\n if (typeof this.projectionFilter !== 'undefined' && this.projectionFilter !== null) {\n toReturn['projectionFilter'] = 'toApiJson' in this.projectionFilter ? this.projectionFilter.toApiJson() : this.projectionFilter;\n }\n return toReturn;\n }\n}\nclass GetHydratedTaskResponse {\n static fromProto(proto) {\n let m = new GetHydratedTaskResponse();\n m = Object.assign(m, proto);\n if (proto.task) {\n m.task = HydratedTask.fromProto(proto.task);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.task !== 'undefined' && this.task !== null) {\n toReturn['task'] = 'toApiJson' in this.task ? this.task.toApiJson() : this.task;\n }\n return toReturn;\n }\n}\nclass GetMultiHydratedTaskRequest {\n static fromProto(proto) {\n let m = new GetMultiHydratedTaskRequest();\n m = Object.assign(m, proto);\n if (proto.identities) {\n m.identities = proto.identities.map(HydratedTaskIdentity.fromProto);\n }\n if (proto.projectionFilter) {\n m.projectionFilter = HydratedTaskProjectionFilter.fromProto(proto.projectionFilter);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.identities !== 'undefined' && this.identities !== null) {\n toReturn['identities'] = 'toApiJson' in this.identities ? this.identities.toApiJson() : this.identities;\n }\n if (typeof this.projectionFilter !== 'undefined' && this.projectionFilter !== null) {\n toReturn['projectionFilter'] = 'toApiJson' in this.projectionFilter ? this.projectionFilter.toApiJson() : this.projectionFilter;\n }\n return toReturn;\n }\n}\nclass GetMultiHydratedTaskResponse {\n static fromProto(proto) {\n let m = new GetMultiHydratedTaskResponse();\n m = Object.assign(m, proto);\n if (proto.tasks) {\n m.tasks = proto.tasks.map(HydratedTask.fromProto);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.tasks !== 'undefined' && this.tasks !== null) {\n toReturn['tasks'] = 'toApiJson' in this.tasks ? this.tasks.toApiJson() : this.tasks;\n }\n return toReturn;\n }\n}\nclass HydratedAccessPermissions {\n static fromProto(proto) {\n let m = new HydratedAccessPermissions();\n m = Object.assign(m, proto);\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.read !== 'undefined') {\n toReturn['read'] = this.read;\n }\n if (typeof this.write !== 'undefined') {\n toReturn['write'] = this.write;\n }\n if (typeof this.delete !== 'undefined') {\n toReturn['delete'] = this.delete;\n }\n return toReturn;\n }\n}\nclass HydratedAttachment {\n static fromProto(proto) {\n let m = new HydratedAttachment();\n m = Object.assign(m, proto);\n if (proto.filePermissions) {\n m.filePermissions = HydratedAccessPermissions.fromProto(proto.filePermissions);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.name !== 'undefined') {\n toReturn['name'] = this.name;\n }\n if (typeof this.url !== 'undefined') {\n toReturn['url'] = this.url;\n }\n if (typeof this.contentType !== 'undefined') {\n toReturn['contentType'] = this.contentType;\n }\n if (typeof this.uploadingPersonaType !== 'undefined') {\n toReturn['uploadingPersonaType'] = this.uploadingPersonaType;\n }\n if (typeof this.filePermissions !== 'undefined' && this.filePermissions !== null) {\n toReturn['filePermissions'] = 'toApiJson' in this.filePermissions ? this.filePermissions.toApiJson() : this.filePermissions;\n }\n return toReturn;\n }\n}\nclass HydratedGroupedMetadata {\n static fromProto(proto) {\n let m = new HydratedGroupedMetadata();\n m = Object.assign(m, proto);\n if (proto.metadataGroup) {\n m.metadataGroup = proto.metadataGroup.map(HydratedKeyValues.fromProto);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.metadataGroup !== 'undefined' && this.metadataGroup !== null) {\n toReturn['metadataGroup'] = 'toApiJson' in this.metadataGroup ? this.metadataGroup.toApiJson() : this.metadataGroup;\n }\n return toReturn;\n }\n}\nclass HydratedGroupedTags {\n static fromProto(proto) {\n let m = new HydratedGroupedTags();\n m = Object.assign(m, proto);\n if (proto.groups) {\n m.groups = proto.groups.map(HydratedTagGroup.fromProto);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.groups !== 'undefined' && this.groups !== null) {\n toReturn['groups'] = 'toApiJson' in this.groups ? this.groups.toApiJson() : this.groups;\n }\n return toReturn;\n }\n}\nclass HydratedKeyValue {\n static fromProto(proto) {\n let m = new HydratedKeyValue();\n m = Object.assign(m, proto);\n if (proto.values) {\n m.values = proto.values.map(HydratedValue.fromProto);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.values !== 'undefined' && this.values !== null) {\n toReturn['values'] = 'toApiJson' in this.values ? this.values.toApiJson() : this.values;\n }\n if (typeof this.key !== 'undefined') {\n toReturn['key'] = this.key;\n }\n return toReturn;\n }\n}\nclass HydratedKeyValues {\n static fromProto(proto) {\n let m = new HydratedKeyValues();\n m = Object.assign(m, proto);\n if (proto.keyValues) {\n m.keyValues = proto.keyValues.map(HydratedKeyValue.fromProto);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.keyValues !== 'undefined' && this.keyValues !== null) {\n toReturn['keyValues'] = 'toApiJson' in this.keyValues ? this.keyValues.toApiJson() : this.keyValues;\n }\n return toReturn;\n }\n}\nclass HydratedSort {\n static fromProto(proto) {\n let m = new HydratedSort();\n m = Object.assign(m, proto);\n if (proto.direction) {\n m.direction = enumStringToValue$6(HydratedSortDirection, proto.direction);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.field !== 'undefined') {\n toReturn['field'] = this.field;\n }\n if (typeof this.direction !== 'undefined') {\n toReturn['direction'] = this.direction;\n }\n return toReturn;\n }\n}\nclass HydratedTagGroup {\n static fromProto(proto) {\n let m = new HydratedTagGroup();\n m = Object.assign(m, proto);\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.tags !== 'undefined') {\n toReturn['tags'] = this.tags;\n }\n return toReturn;\n }\n}\nclass HydratedTask {\n static fromProto(proto) {\n let m = new HydratedTask();\n m = Object.assign(m, proto);\n if (proto.version) {\n m.version = parseInt(proto.version, 10);\n }\n if (proto.identity) {\n m.identity = HydratedTaskIdentity.fromProto(proto.identity);\n }\n if (proto.dueDate) {\n m.dueDate = new Date(proto.dueDate);\n }\n if (proto.history) {\n m.history = proto.history.map(HydratedTaskHistory.fromProto);\n }\n if (proto.created) {\n m.created = new Date(proto.created);\n }\n if (proto.modified) {\n m.modified = new Date(proto.modified);\n }\n if (proto.completionDate) {\n m.completionDate = new Date(proto.completionDate);\n }\n if (proto.subtasks) {\n m.subtasks = proto.subtasks.map(HydratedTaskIdentity.fromProto);\n }\n if (proto.data) {\n m.data = HydratedKeyValues.fromProto(proto.data);\n }\n if (proto.metadata) {\n m.metadata = HydratedKeyValues.fromProto(proto.metadata);\n }\n if (proto.conversations) {\n m.conversations = proto.conversations.map(HydratedTaskConversation.fromProto);\n }\n if (proto.deleted) {\n m.deleted = new Date(proto.deleted);\n }\n if (proto.attachment) {\n m.attachment = proto.attachment.map(HydratedAttachment.fromProto);\n }\n if (proto.accountData) {\n m.accountData = AccountData.fromProto(proto.accountData);\n }\n if (proto.partnerData) {\n m.partnerData = PartnerData.fromProto(proto.partnerData);\n }\n if (proto.marketData) {\n m.marketData = MarketData.fromProto(proto.marketData);\n }\n if (proto.accountSalespersonData) {\n m.accountSalespersonData = AccountSalespersonData.fromProto(proto.accountSalespersonData);\n }\n if (proto.parentData) {\n m.parentData = ParentData.fromProto(proto.parentData);\n }\n if (proto.projectStatusData) {\n m.projectStatusData = ProjectStatusData.fromProto(proto.projectStatusData);\n }\n if (proto.projectCommentsCountData) {\n m.projectCommentsCountData = ProjectCommentsCountData.fromProto(proto.projectCommentsCountData);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.version !== 'undefined') {\n toReturn['version'] = this.version;\n }\n if (typeof this.identity !== 'undefined' && this.identity !== null) {\n toReturn['identity'] = 'toApiJson' in this.identity ? this.identity.toApiJson() : this.identity;\n }\n if (typeof this.title !== 'undefined') {\n toReturn['title'] = this.title;\n }\n if (typeof this.status !== 'undefined') {\n toReturn['status'] = this.status;\n }\n if (typeof this.dueDate !== 'undefined' && this.dueDate !== null) {\n toReturn['dueDate'] = 'toApiJson' in this.dueDate ? this.dueDate.toApiJson() : this.dueDate;\n }\n if (typeof this.assignees !== 'undefined') {\n toReturn['assignees'] = this.assignees;\n }\n if (typeof this.notes !== 'undefined') {\n toReturn['notes'] = this.notes;\n }\n if (typeof this.description !== 'undefined') {\n toReturn['description'] = this.description;\n }\n if (typeof this.tags !== 'undefined') {\n toReturn['tags'] = this.tags;\n }\n if (typeof this.history !== 'undefined' && this.history !== null) {\n toReturn['history'] = 'toApiJson' in this.history ? this.history.toApiJson() : this.history;\n }\n if (typeof this.created !== 'undefined' && this.created !== null) {\n toReturn['created'] = 'toApiJson' in this.created ? this.created.toApiJson() : this.created;\n }\n if (typeof this.modified !== 'undefined' && this.modified !== null) {\n toReturn['modified'] = 'toApiJson' in this.modified ? this.modified.toApiJson() : this.modified;\n }\n if (typeof this.completionDate !== 'undefined' && this.completionDate !== null) {\n toReturn['completionDate'] = 'toApiJson' in this.completionDate ? this.completionDate.toApiJson() : this.completionDate;\n }\n if (typeof this.subtasks !== 'undefined' && this.subtasks !== null) {\n toReturn['subtasks'] = 'toApiJson' in this.subtasks ? this.subtasks.toApiJson() : this.subtasks;\n }\n if (typeof this.taskType !== 'undefined') {\n toReturn['taskType'] = this.taskType;\n }\n if (typeof this.data !== 'undefined' && this.data !== null) {\n toReturn['data'] = 'toApiJson' in this.data ? this.data.toApiJson() : this.data;\n }\n if (typeof this.metadata !== 'undefined' && this.metadata !== null) {\n toReturn['metadata'] = 'toApiJson' in this.metadata ? this.metadata.toApiJson() : this.metadata;\n }\n if (typeof this.conversations !== 'undefined' && this.conversations !== null) {\n toReturn['conversations'] = 'toApiJson' in this.conversations ? this.conversations.toApiJson() : this.conversations;\n }\n if (typeof this.deleted !== 'undefined' && this.deleted !== null) {\n toReturn['deleted'] = 'toApiJson' in this.deleted ? this.deleted.toApiJson() : this.deleted;\n }\n if (typeof this.attachment !== 'undefined' && this.attachment !== null) {\n toReturn['attachment'] = 'toApiJson' in this.attachment ? this.attachment.toApiJson() : this.attachment;\n }\n if (typeof this.customTags !== 'undefined') {\n toReturn['customTags'] = this.customTags;\n }\n if (typeof this.accountData !== 'undefined' && this.accountData !== null) {\n toReturn['accountData'] = 'toApiJson' in this.accountData ? this.accountData.toApiJson() : this.accountData;\n }\n if (typeof this.partnerData !== 'undefined' && this.partnerData !== null) {\n toReturn['partnerData'] = 'toApiJson' in this.partnerData ? this.partnerData.toApiJson() : this.partnerData;\n }\n if (typeof this.marketData !== 'undefined' && this.marketData !== null) {\n toReturn['marketData'] = 'toApiJson' in this.marketData ? this.marketData.toApiJson() : this.marketData;\n }\n if (typeof this.accountSalespersonData !== 'undefined' && this.accountSalespersonData !== null) {\n toReturn['accountSalespersonData'] = 'toApiJson' in this.accountSalespersonData ? this.accountSalespersonData.toApiJson() : this.accountSalespersonData;\n }\n if (typeof this.parentData !== 'undefined' && this.parentData !== null) {\n toReturn['parentData'] = 'toApiJson' in this.parentData ? this.parentData.toApiJson() : this.parentData;\n }\n if (typeof this.projectStatusData !== 'undefined' && this.projectStatusData !== null) {\n toReturn['projectStatusData'] = 'toApiJson' in this.projectStatusData ? this.projectStatusData.toApiJson() : this.projectStatusData;\n }\n if (typeof this.projectCommentsCountData !== 'undefined' && this.projectCommentsCountData !== null) {\n toReturn['projectCommentsCountData'] = 'toApiJson' in this.projectCommentsCountData ? this.projectCommentsCountData.toApiJson() : this.projectCommentsCountData;\n }\n return toReturn;\n }\n}\nclass HydratedTaskConversation {\n static fromProto(proto) {\n let m = new HydratedTaskConversation();\n m = Object.assign(m, proto);\n if (proto.created) {\n m.created = new Date(proto.created);\n }\n if (proto.persona) {\n m.persona = enumStringToValue$6(HydratedConversationPersonaType, proto.persona);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.sendFrom !== 'undefined') {\n toReturn['sendFrom'] = this.sendFrom;\n }\n if (typeof this.sendTo !== 'undefined') {\n toReturn['sendTo'] = this.sendTo;\n }\n if (typeof this.message !== 'undefined') {\n toReturn['message'] = this.message;\n }\n if (typeof this.created !== 'undefined' && this.created !== null) {\n toReturn['created'] = 'toApiJson' in this.created ? this.created.toApiJson() : this.created;\n }\n if (typeof this.source !== 'undefined') {\n toReturn['source'] = this.source;\n }\n if (typeof this.isPublic !== 'undefined') {\n toReturn['isPublic'] = this.isPublic;\n }\n if (typeof this.persona !== 'undefined') {\n toReturn['persona'] = this.persona;\n }\n return toReturn;\n }\n}\nclass HydratedTaskHistory {\n static fromProto(proto) {\n let m = new HydratedTaskHistory();\n m = Object.assign(m, proto);\n if (proto.date) {\n m.date = new Date(proto.date);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.date !== 'undefined' && this.date !== null) {\n toReturn['date'] = 'toApiJson' in this.date ? this.date.toApiJson() : this.date;\n }\n if (typeof this.user !== 'undefined') {\n toReturn['user'] = this.user;\n }\n if (typeof this.message !== 'undefined') {\n toReturn['message'] = this.message;\n }\n return toReturn;\n }\n}\nclass HydratedTaskIdentity {\n static fromProto(proto) {\n let m = new HydratedTaskIdentity();\n m = Object.assign(m, proto);\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.namespace !== 'undefined') {\n toReturn['namespace'] = this.namespace;\n }\n if (typeof this.parentPath !== 'undefined') {\n toReturn['parentPath'] = this.parentPath;\n }\n if (typeof this.taskId !== 'undefined') {\n toReturn['taskId'] = this.taskId;\n }\n return toReturn;\n }\n}\nclass HydratedTaskProjectionFilter {\n static fromProto(proto) {\n let m = new HydratedTaskProjectionFilter();\n m = Object.assign(m, proto);\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.includeHistory !== 'undefined') {\n toReturn['includeHistory'] = this.includeHistory;\n }\n if (typeof this.includeConversations !== 'undefined') {\n toReturn['includeConversations'] = this.includeConversations;\n }\n if (typeof this.includeAccountData !== 'undefined') {\n toReturn['includeAccountData'] = this.includeAccountData;\n }\n if (typeof this.includePartnerData !== 'undefined') {\n toReturn['includePartnerData'] = this.includePartnerData;\n }\n if (typeof this.includeMarketData !== 'undefined') {\n toReturn['includeMarketData'] = this.includeMarketData;\n }\n if (typeof this.includeAccountSalespersonData !== 'undefined') {\n toReturn['includeAccountSalespersonData'] = this.includeAccountSalespersonData;\n }\n if (typeof this.includeParentData !== 'undefined') {\n toReturn['includeParentData'] = this.includeParentData;\n }\n if (typeof this.includeProjectStatusData !== 'undefined') {\n toReturn['includeProjectStatusData'] = this.includeProjectStatusData;\n }\n if (typeof this.includeProjectCommentsCountData !== 'undefined') {\n toReturn['includeProjectCommentsCountData'] = this.includeProjectCommentsCountData;\n }\n return toReturn;\n }\n}\nclass HydratedValue {\n static fromProto(proto) {\n let m = new HydratedValue();\n m = Object.assign(m, proto);\n if (proto.int64Value) {\n m.int64Value = parseInt(proto.int64Value, 10);\n }\n if (proto.timeValue) {\n m.timeValue = new Date(proto.timeValue);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.stringValue !== 'undefined') {\n toReturn['stringValue'] = this.stringValue;\n }\n if (typeof this.int64Value !== 'undefined') {\n toReturn['int64Value'] = this.int64Value;\n }\n if (typeof this.boolValue !== 'undefined') {\n toReturn['boolValue'] = this.boolValue;\n }\n if (typeof this.doubleValue !== 'undefined') {\n toReturn['doubleValue'] = this.doubleValue;\n }\n if (typeof this.timeValue !== 'undefined' && this.timeValue !== null) {\n toReturn['timeValue'] = 'toApiJson' in this.timeValue ? this.timeValue.toApiJson() : this.timeValue;\n }\n if (typeof this.type !== 'undefined') {\n toReturn['type'] = this.type;\n }\n return toReturn;\n }\n}\nclass MarketData {\n static fromProto(proto) {\n let m = new MarketData();\n m = Object.assign(m, proto);\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.marketId !== 'undefined') {\n toReturn['marketId'] = this.marketId;\n }\n if (typeof this.name !== 'undefined') {\n toReturn['name'] = this.name;\n }\n return toReturn;\n }\n}\nclass ParentData {\n static fromProto(proto) {\n let m = new ParentData();\n m = Object.assign(m, proto);\n if (proto.identity) {\n m.identity = HydratedTaskIdentity.fromProto(proto.identity);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.identity !== 'undefined' && this.identity !== null) {\n toReturn['identity'] = 'toApiJson' in this.identity ? this.identity.toApiJson() : this.identity;\n }\n if (typeof this.parentTitle !== 'undefined') {\n toReturn['parentTitle'] = this.parentTitle;\n }\n return toReturn;\n }\n}\nclass PartnerData {\n static fromProto(proto) {\n let m = new PartnerData();\n m = Object.assign(m, proto);\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.partnerId !== 'undefined') {\n toReturn['partnerId'] = this.partnerId;\n }\n if (typeof this.name !== 'undefined') {\n toReturn['name'] = this.name;\n }\n return toReturn;\n }\n}\nclass ProjectCommentsCountData {\n static fromProto(proto) {\n let m = new ProjectCommentsCountData();\n m = Object.assign(m, proto);\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.totalComments !== 'undefined') {\n toReturn['totalComments'] = this.totalComments;\n }\n return toReturn;\n }\n}\nclass ProjectStatusData {\n static fromProto(proto) {\n let m = new ProjectStatusData();\n m = Object.assign(m, proto);\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.completedSubtaskCount !== 'undefined') {\n toReturn['completedSubtaskCount'] = this.completedSubtaskCount;\n }\n if (typeof this.totalSubtaskCount !== 'undefined') {\n toReturn['totalSubtaskCount'] = this.totalSubtaskCount;\n }\n if (typeof this.hasOverdueSubtasks !== 'undefined') {\n toReturn['hasOverdueSubtasks'] = this.hasOverdueSubtasks;\n }\n return toReturn;\n }\n}\nclass SearchHydratedTaskRequest {\n static fromProto(proto) {\n let m = new SearchHydratedTaskRequest();\n m = Object.assign(m, proto);\n if (proto.rangeStart) {\n m.rangeStart = new Date(proto.rangeStart);\n }\n if (proto.rangeEnd) {\n m.rangeEnd = new Date(proto.rangeEnd);\n }\n if (proto.metadata) {\n m.metadata = HydratedKeyValues.fromProto(proto.metadata);\n }\n if (proto.pageSize) {\n m.pageSize = parseInt(proto.pageSize, 10);\n }\n if (proto.dateRangeField) {\n m.dateRangeField = enumStringToValue$6(HydratedRangeField, proto.dateRangeField);\n }\n if (proto.sorts) {\n m.sorts = proto.sorts.map(HydratedSort.fromProto);\n }\n if (proto.tagGroups) {\n m.tagGroups = HydratedGroupedTags.fromProto(proto.tagGroups);\n }\n if (proto.metadataGroups) {\n m.metadataGroups = HydratedGroupedMetadata.fromProto(proto.metadataGroups);\n }\n if (proto.projectionFilter) {\n m.projectionFilter = HydratedTaskProjectionFilter.fromProto(proto.projectionFilter);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.namespace !== 'undefined') {\n toReturn['namespace'] = this.namespace;\n }\n if (typeof this.parentPathFuzzy !== 'undefined') {\n toReturn['parentPathFuzzy'] = this.parentPathFuzzy;\n }\n if (typeof this.parentPathExact !== 'undefined') {\n toReturn['parentPathExact'] = this.parentPathExact;\n }\n if (typeof this.titleFuzzy !== 'undefined') {\n toReturn['titleFuzzy'] = this.titleFuzzy;\n }\n if (typeof this.titleExact !== 'undefined') {\n toReturn['titleExact'] = this.titleExact;\n }\n if (typeof this.assignees !== 'undefined') {\n toReturn['assignees'] = this.assignees;\n }\n if (typeof this.rangeStart !== 'undefined' && this.rangeStart !== null) {\n toReturn['rangeStart'] = 'toApiJson' in this.rangeStart ? this.rangeStart.toApiJson() : this.rangeStart;\n }\n if (typeof this.rangeEnd !== 'undefined' && this.rangeEnd !== null) {\n toReturn['rangeEnd'] = 'toApiJson' in this.rangeEnd ? this.rangeEnd.toApiJson() : this.rangeEnd;\n }\n if (typeof this.types !== 'undefined') {\n toReturn['types'] = this.types;\n }\n if (typeof this.status !== 'undefined') {\n toReturn['status'] = this.status;\n }\n if (typeof this.tags !== 'undefined') {\n toReturn['tags'] = this.tags;\n }\n if (typeof this.metadata !== 'undefined' && this.metadata !== null) {\n toReturn['metadata'] = 'toApiJson' in this.metadata ? this.metadata.toApiJson() : this.metadata;\n }\n if (typeof this.cursor !== 'undefined') {\n toReturn['cursor'] = this.cursor;\n }\n if (typeof this.pageSize !== 'undefined') {\n toReturn['pageSize'] = this.pageSize;\n }\n if (typeof this.dateRangeField !== 'undefined') {\n toReturn['dateRangeField'] = this.dateRangeField;\n }\n if (typeof this.access !== 'undefined') {\n toReturn['access'] = this.access;\n }\n if (typeof this.sorts !== 'undefined' && this.sorts !== null) {\n toReturn['sorts'] = 'toApiJson' in this.sorts ? this.sorts.toApiJson() : this.sorts;\n }\n if (typeof this.excludeHistory !== 'undefined') {\n toReturn['excludeHistory'] = this.excludeHistory;\n }\n if (typeof this.deletedOnly !== 'undefined') {\n toReturn['deletedOnly'] = this.deletedOnly;\n }\n if (typeof this.tagGroups !== 'undefined' && this.tagGroups !== null) {\n toReturn['tagGroups'] = 'toApiJson' in this.tagGroups ? this.tagGroups.toApiJson() : this.tagGroups;\n }\n if (typeof this.metadataGroups !== 'undefined' && this.metadataGroups !== null) {\n toReturn['metadataGroups'] = 'toApiJson' in this.metadataGroups ? this.metadataGroups.toApiJson() : this.metadataGroups;\n }\n if (typeof this.taskId !== 'undefined') {\n toReturn['taskId'] = this.taskId;\n }\n if (typeof this.customTags !== 'undefined') {\n toReturn['customTags'] = this.customTags;\n }\n if (typeof this.projectionFilter !== 'undefined' && this.projectionFilter !== null) {\n toReturn['projectionFilter'] = 'toApiJson' in this.projectionFilter ? this.projectionFilter.toApiJson() : this.projectionFilter;\n }\n return toReturn;\n }\n}\nclass SearchHydratedTaskResponse {\n static fromProto(proto) {\n let m = new SearchHydratedTaskResponse();\n m = Object.assign(m, proto);\n if (proto.tasks) {\n m.tasks = proto.tasks.map(HydratedTask.fromProto);\n }\n if (proto.pagingMetadata) {\n m.pagingMetadata = PagedResponseMetadata.fromProto(proto.pagingMetadata);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.tasks !== 'undefined' && this.tasks !== null) {\n toReturn['tasks'] = 'toApiJson' in this.tasks ? this.tasks.toApiJson() : this.tasks;\n }\n if (typeof this.pagingMetadata !== 'undefined' && this.pagingMetadata !== null) {\n toReturn['pagingMetadata'] = 'toApiJson' in this.pagingMetadata ? this.pagingMetadata.toApiJson() : this.pagingMetadata;\n }\n return toReturn;\n }\n}\nfunction enumStringToValue$5(enumRef, value) {\n if (typeof value === 'number') {\n return value;\n }\n return enumRef[value];\n}\nclass CanUserAccessVendorPartnerRequest {\n static fromProto(proto) {\n let m = new CanUserAccessVendorPartnerRequest();\n m = Object.assign(m, proto);\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.userId !== 'undefined') {\n toReturn['userId'] = this.userId;\n }\n if (typeof this.partnerId !== 'undefined') {\n toReturn['partnerId'] = this.partnerId;\n }\n if (typeof this.vendorPartnerId !== 'undefined') {\n toReturn['vendorPartnerId'] = this.vendorPartnerId;\n }\n return toReturn;\n }\n}\nclass CanUserAccessVendorPartnerResponse {\n static fromProto(proto) {\n let m = new CanUserAccessVendorPartnerResponse();\n m = Object.assign(m, proto);\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.canAccess !== 'undefined') {\n toReturn['canAccess'] = this.canAccess;\n }\n return toReturn;\n }\n}\nfunction enumStringToValue$4(enumRef, value) {\n if (typeof value === 'number') {\n return value;\n }\n return enumRef[value];\n}\nclass CreateRecurringTaskRequest {\n static fromProto(proto) {\n let m = new CreateRecurringTaskRequest();\n m = Object.assign(m, proto);\n if (proto.recurringTask) {\n m.recurringTask = RecurringTask.fromProto(proto.recurringTask);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.recurringTask !== 'undefined' && this.recurringTask !== null) {\n toReturn['recurringTask'] = 'toApiJson' in this.recurringTask ? this.recurringTask.toApiJson() : this.recurringTask;\n }\n return toReturn;\n }\n}\nclass CreateRecurringTaskResponse {\n static fromProto(proto) {\n let m = new CreateRecurringTaskResponse();\n m = Object.assign(m, proto);\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.recurringTaskId !== 'undefined') {\n toReturn['recurringTaskId'] = this.recurringTaskId;\n }\n return toReturn;\n }\n}\nclass DeleteRecurringTaskRequest {\n static fromProto(proto) {\n let m = new DeleteRecurringTaskRequest();\n m = Object.assign(m, proto);\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.partnerId !== 'undefined') {\n toReturn['partnerId'] = this.partnerId;\n }\n if (typeof this.fulfillingPartnerId !== 'undefined') {\n toReturn['fulfillingPartnerId'] = this.fulfillingPartnerId;\n }\n if (typeof this.recurringTaskId !== 'undefined') {\n toReturn['recurringTaskId'] = this.recurringTaskId;\n }\n if (typeof this.templateId !== 'undefined') {\n toReturn['templateId'] = this.templateId;\n }\n if (typeof this.accountGroupId !== 'undefined') {\n toReturn['accountGroupId'] = this.accountGroupId;\n }\n return toReturn;\n }\n}\nclass GetRecurringTaskRequest {\n static fromProto(proto) {\n let m = new GetRecurringTaskRequest();\n m = Object.assign(m, proto);\n if (proto.projectionFilter) {\n m.projectionFilter = RecurringTaskProjectionFilter.fromProto(proto.projectionFilter);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.partnerId !== 'undefined') {\n toReturn['partnerId'] = this.partnerId;\n }\n if (typeof this.fulfillingPartnerId !== 'undefined') {\n toReturn['fulfillingPartnerId'] = this.fulfillingPartnerId;\n }\n if (typeof this.recurringTaskId !== 'undefined') {\n toReturn['recurringTaskId'] = this.recurringTaskId;\n }\n if (typeof this.projectionFilter !== 'undefined' && this.projectionFilter !== null) {\n toReturn['projectionFilter'] = 'toApiJson' in this.projectionFilter ? this.projectionFilter.toApiJson() : this.projectionFilter;\n }\n return toReturn;\n }\n}\nclass GetRecurringTaskResponse {\n static fromProto(proto) {\n let m = new GetRecurringTaskResponse();\n m = Object.assign(m, proto);\n if (proto.recurringTask) {\n m.recurringTask = RecurringTask.fromProto(proto.recurringTask);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.recurringTask !== 'undefined' && this.recurringTask !== null) {\n toReturn['recurringTask'] = 'toApiJson' in this.recurringTask ? this.recurringTask.toApiJson() : this.recurringTask;\n }\n return toReturn;\n }\n}\nclass MonthlyRecurringOptions {\n static fromProto(proto) {\n let m = new MonthlyRecurringOptions();\n m = Object.assign(m, proto);\n if (proto.dayOfMonth) {\n m.dayOfMonth = parseInt(proto.dayOfMonth, 10);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.dayOfMonth !== 'undefined') {\n toReturn['dayOfMonth'] = this.dayOfMonth;\n }\n if (typeof this.isLastDayOfMonth !== 'undefined') {\n toReturn['isLastDayOfMonth'] = this.isLastDayOfMonth;\n }\n return toReturn;\n }\n}\nclass RecurringTask {\n static fromProto(proto) {\n let m = new RecurringTask();\n m = Object.assign(m, proto);\n if (proto.type) {\n m.type = enumStringToValue$4(RecurringTaskTypes, proto.type);\n }\n if (proto.initialCreationDate) {\n m.initialCreationDate = new Date(proto.initialCreationDate);\n }\n if (proto.nextCreationDate) {\n m.nextCreationDate = new Date(proto.nextCreationDate);\n }\n if (proto.nextDueDate) {\n m.nextDueDate = new Date(proto.nextDueDate);\n }\n if (proto.daysToComplete) {\n m.daysToComplete = parseInt(proto.daysToComplete, 10);\n }\n if (proto.frequency) {\n m.frequency = enumStringToValue$4(RecurringTaskFrequencies, proto.frequency);\n }\n if (proto.frequencyOffset) {\n m.frequencyOffset = parseInt(proto.frequencyOffset, 10);\n }\n if (proto.weeklyOptions) {\n m.weeklyOptions = WeeklyRecurringOptions.fromProto(proto.weeklyOptions);\n }\n if (proto.monthlyOptions) {\n m.monthlyOptions = MonthlyRecurringOptions.fromProto(proto.monthlyOptions);\n }\n if (proto.yearlyOptions) {\n m.yearlyOptions = YearlyRecurringOptions.fromProto(proto.yearlyOptions);\n }\n if (proto.expires) {\n m.expires = enumStringToValue$4(RecurringTaskExpires, proto.expires);\n }\n if (proto.occurrences) {\n m.occurrences = parseInt(proto.occurrences, 10);\n }\n if (proto.expiryDate) {\n m.expiryDate = new Date(proto.expiryDate);\n }\n if (proto.templateInfo) {\n m.templateInfo = TemplateInfo.fromProto(proto.templateInfo);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.recurringTaskId !== 'undefined') {\n toReturn['recurringTaskId'] = this.recurringTaskId;\n }\n if (typeof this.partnerId !== 'undefined') {\n toReturn['partnerId'] = this.partnerId;\n }\n if (typeof this.fulfillingPartnerId !== 'undefined') {\n toReturn['fulfillingPartnerId'] = this.fulfillingPartnerId;\n }\n if (typeof this.type !== 'undefined') {\n toReturn['type'] = this.type;\n }\n if (typeof this.accountGroupId !== 'undefined') {\n toReturn['accountGroupId'] = this.accountGroupId;\n }\n if (typeof this.templateId !== 'undefined') {\n toReturn['templateId'] = this.templateId;\n }\n if (typeof this.initialCreationDate !== 'undefined' && this.initialCreationDate !== null) {\n toReturn['initialCreationDate'] = 'toApiJson' in this.initialCreationDate ? this.initialCreationDate.toApiJson() : this.initialCreationDate;\n }\n if (typeof this.nextCreationDate !== 'undefined' && this.nextCreationDate !== null) {\n toReturn['nextCreationDate'] = 'toApiJson' in this.nextCreationDate ? this.nextCreationDate.toApiJson() : this.nextCreationDate;\n }\n if (typeof this.nextDueDate !== 'undefined' && this.nextDueDate !== null) {\n toReturn['nextDueDate'] = 'toApiJson' in this.nextDueDate ? this.nextDueDate.toApiJson() : this.nextDueDate;\n }\n if (typeof this.daysToComplete !== 'undefined') {\n toReturn['daysToComplete'] = this.daysToComplete;\n }\n if (typeof this.name !== 'undefined') {\n toReturn['name'] = this.name;\n }\n if (typeof this.description !== 'undefined') {\n toReturn['description'] = this.description;\n }\n if (typeof this.publicNote !== 'undefined') {\n toReturn['publicNote'] = this.publicNote;\n }\n if (typeof this.privateNote !== 'undefined') {\n toReturn['privateNote'] = this.privateNote;\n }\n if (typeof this.customTags !== 'undefined') {\n toReturn['customTags'] = this.customTags;\n }\n if (typeof this.tags !== 'undefined') {\n toReturn['tags'] = this.tags;\n }\n if (typeof this.assignees !== 'undefined') {\n toReturn['assignees'] = this.assignees;\n }\n if (typeof this.orderId !== 'undefined') {\n toReturn['orderId'] = this.orderId;\n }\n if (typeof this.frequency !== 'undefined') {\n toReturn['frequency'] = this.frequency;\n }\n if (typeof this.frequencyOffset !== 'undefined') {\n toReturn['frequencyOffset'] = this.frequencyOffset;\n }\n if (typeof this.weeklyOptions !== 'undefined' && this.weeklyOptions !== null) {\n toReturn['weeklyOptions'] = 'toApiJson' in this.weeklyOptions ? this.weeklyOptions.toApiJson() : this.weeklyOptions;\n }\n if (typeof this.monthlyOptions !== 'undefined' && this.monthlyOptions !== null) {\n toReturn['monthlyOptions'] = 'toApiJson' in this.monthlyOptions ? this.monthlyOptions.toApiJson() : this.monthlyOptions;\n }\n if (typeof this.yearlyOptions !== 'undefined' && this.yearlyOptions !== null) {\n toReturn['yearlyOptions'] = 'toApiJson' in this.yearlyOptions ? this.yearlyOptions.toApiJson() : this.yearlyOptions;\n }\n if (typeof this.expires !== 'undefined') {\n toReturn['expires'] = this.expires;\n }\n if (typeof this.occurrences !== 'undefined') {\n toReturn['occurrences'] = this.occurrences;\n }\n if (typeof this.expiryDate !== 'undefined' && this.expiryDate !== null) {\n toReturn['expiryDate'] = 'toApiJson' in this.expiryDate ? this.expiryDate.toApiJson() : this.expiryDate;\n }\n if (typeof this.templateInfo !== 'undefined' && this.templateInfo !== null) {\n toReturn['templateInfo'] = 'toApiJson' in this.templateInfo ? this.templateInfo.toApiJson() : this.templateInfo;\n }\n return toReturn;\n }\n}\nclass RecurringTaskProjectionFilter {\n static fromProto(proto) {\n let m = new RecurringTaskProjectionFilter();\n m = Object.assign(m, proto);\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.includeTemplateOwnerId !== 'undefined') {\n toReturn['includeTemplateOwnerId'] = this.includeTemplateOwnerId;\n }\n if (typeof this.includeFullTemplate !== 'undefined') {\n toReturn['includeFullTemplate'] = this.includeFullTemplate;\n }\n return toReturn;\n }\n}\nclass SearchRecurringTaskRequest {\n static fromProto(proto) {\n let m = new SearchRecurringTaskRequest();\n m = Object.assign(m, proto);\n if (proto.pagingOptions) {\n m.pagingOptions = PagedRequestOptions.fromProto(proto.pagingOptions);\n }\n if (proto.projectionFilter) {\n m.projectionFilter = RecurringTaskProjectionFilter.fromProto(proto.projectionFilter);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.partnerId !== 'undefined') {\n toReturn['partnerId'] = this.partnerId;\n }\n if (typeof this.fulfillingPartnerId !== 'undefined') {\n toReturn['fulfillingPartnerId'] = this.fulfillingPartnerId;\n }\n if (typeof this.templateId !== 'undefined') {\n toReturn['templateId'] = this.templateId;\n }\n if (typeof this.accountGroupId !== 'undefined') {\n toReturn['accountGroupId'] = this.accountGroupId;\n }\n if (typeof this.pagingOptions !== 'undefined' && this.pagingOptions !== null) {\n toReturn['pagingOptions'] = 'toApiJson' in this.pagingOptions ? this.pagingOptions.toApiJson() : this.pagingOptions;\n }\n if (typeof this.projectionFilter !== 'undefined' && this.projectionFilter !== null) {\n toReturn['projectionFilter'] = 'toApiJson' in this.projectionFilter ? this.projectionFilter.toApiJson() : this.projectionFilter;\n }\n return toReturn;\n }\n}\nclass SearchRecurringTaskResponse {\n static fromProto(proto) {\n let m = new SearchRecurringTaskResponse();\n m = Object.assign(m, proto);\n if (proto.recurringTasks) {\n m.recurringTasks = proto.recurringTasks.map(RecurringTask.fromProto);\n }\n if (proto.pagingMetadata) {\n m.pagingMetadata = PagedResponseMetadata.fromProto(proto.pagingMetadata);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.recurringTasks !== 'undefined' && this.recurringTasks !== null) {\n toReturn['recurringTasks'] = 'toApiJson' in this.recurringTasks ? this.recurringTasks.toApiJson() : this.recurringTasks;\n }\n if (typeof this.pagingMetadata !== 'undefined' && this.pagingMetadata !== null) {\n toReturn['pagingMetadata'] = 'toApiJson' in this.pagingMetadata ? this.pagingMetadata.toApiJson() : this.pagingMetadata;\n }\n return toReturn;\n }\n}\nclass TemplateInfo {\n static fromProto(proto) {\n let m = new TemplateInfo();\n m = Object.assign(m, proto);\n if (proto.template) {\n m.template = Template.fromProto(proto.template);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.templateOwnerId !== 'undefined') {\n toReturn['templateOwnerId'] = this.templateOwnerId;\n }\n if (typeof this.template !== 'undefined' && this.template !== null) {\n toReturn['template'] = 'toApiJson' in this.template ? this.template.toApiJson() : this.template;\n }\n return toReturn;\n }\n}\nclass UpdateRecurringTaskRequest {\n static fromProto(proto) {\n let m = new UpdateRecurringTaskRequest();\n m = Object.assign(m, proto);\n if (proto.recurringTask) {\n m.recurringTask = RecurringTask.fromProto(proto.recurringTask);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.recurringTask !== 'undefined' && this.recurringTask !== null) {\n toReturn['recurringTask'] = 'toApiJson' in this.recurringTask ? this.recurringTask.toApiJson() : this.recurringTask;\n }\n return toReturn;\n }\n}\nclass UpdateRecurringTaskResponse {\n static fromProto(proto) {\n let m = new UpdateRecurringTaskResponse();\n m = Object.assign(m, proto);\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.recurringTaskId !== 'undefined') {\n toReturn['recurringTaskId'] = this.recurringTaskId;\n }\n return toReturn;\n }\n}\nclass WeeklyRecurringOptions {\n static fromProto(proto) {\n let m = new WeeklyRecurringOptions();\n m = Object.assign(m, proto);\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.onSunday !== 'undefined') {\n toReturn['onSunday'] = this.onSunday;\n }\n if (typeof this.onMonday !== 'undefined') {\n toReturn['onMonday'] = this.onMonday;\n }\n if (typeof this.onTuesday !== 'undefined') {\n toReturn['onTuesday'] = this.onTuesday;\n }\n if (typeof this.onWednesday !== 'undefined') {\n toReturn['onWednesday'] = this.onWednesday;\n }\n if (typeof this.onThursday !== 'undefined') {\n toReturn['onThursday'] = this.onThursday;\n }\n if (typeof this.onFriday !== 'undefined') {\n toReturn['onFriday'] = this.onFriday;\n }\n if (typeof this.onSaturday !== 'undefined') {\n toReturn['onSaturday'] = this.onSaturday;\n }\n return toReturn;\n }\n}\nclass YearlyRecurringOptions {\n static fromProto(proto) {\n let m = new YearlyRecurringOptions();\n m = Object.assign(m, proto);\n if (proto.dayOfYear) {\n m.dayOfYear = new Date(proto.dayOfYear);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.dayOfYear !== 'undefined' && this.dayOfYear !== null) {\n toReturn['dayOfYear'] = 'toApiJson' in this.dayOfYear ? this.dayOfYear.toApiJson() : this.dayOfYear;\n }\n return toReturn;\n }\n}\nfunction enumStringToValue$3(enumRef, value) {\n if (typeof value === 'number') {\n return value;\n }\n return enumRef[value];\n}\nclass AddSocialPostSubtaskRequest {\n static fromProto(proto) {\n let m = new AddSocialPostSubtaskRequest();\n m = Object.assign(m, proto);\n if (proto.posts) {\n m.posts = proto.posts.map(Post.fromProto);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.partnerId !== 'undefined') {\n toReturn['partnerId'] = this.partnerId;\n }\n if (typeof this.accountGroupId !== 'undefined') {\n toReturn['accountGroupId'] = this.accountGroupId;\n }\n if (typeof this.parentTaskId !== 'undefined') {\n toReturn['parentTaskId'] = this.parentTaskId;\n }\n if (typeof this.taskId !== 'undefined') {\n toReturn['taskId'] = this.taskId;\n }\n if (typeof this.assignee !== 'undefined') {\n toReturn['assignee'] = this.assignee;\n }\n if (typeof this.posts !== 'undefined' && this.posts !== null) {\n toReturn['posts'] = 'toApiJson' in this.posts ? this.posts.toApiJson() : this.posts;\n }\n return toReturn;\n }\n}\nclass Post {\n static fromProto(proto) {\n let m = new Post();\n m = Object.assign(m, proto);\n if (proto.scheduledDateTime) {\n m.scheduledDateTime = new Date(proto.scheduledDateTime);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.username !== 'undefined') {\n toReturn['username'] = this.username;\n }\n if (typeof this.postText !== 'undefined') {\n toReturn['postText'] = this.postText;\n }\n if (typeof this.ssid !== 'undefined') {\n toReturn['ssid'] = this.ssid;\n }\n if (typeof this.imageUrl !== 'undefined') {\n toReturn['imageUrl'] = this.imageUrl;\n }\n if (typeof this.socialPostId !== 'undefined') {\n toReturn['socialPostId'] = this.socialPostId;\n }\n if (typeof this.scheduledDateTime !== 'undefined' && this.scheduledDateTime !== null) {\n toReturn['scheduledDateTime'] = 'toApiJson' in this.scheduledDateTime ? this.scheduledDateTime.toApiJson() : this.scheduledDateTime;\n }\n if (typeof this.imageUrls !== 'undefined') {\n toReturn['imageUrls'] = this.imageUrls;\n }\n return toReturn;\n }\n}\nclass SendCalendarForClientFeedbackExternalRequest {\n static fromProto(proto) {\n let m = new SendCalendarForClientFeedbackExternalRequest();\n m = Object.assign(m, proto);\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.partnerId !== 'undefined') {\n toReturn['partnerId'] = this.partnerId;\n }\n if (typeof this.accountGroupId !== 'undefined') {\n toReturn['accountGroupId'] = this.accountGroupId;\n }\n if (typeof this.parentTaskId !== 'undefined') {\n toReturn['parentTaskId'] = this.parentTaskId;\n }\n if (typeof this.taskId !== 'undefined') {\n toReturn['taskId'] = this.taskId;\n }\n if (typeof this.socialCalendarReportUrl !== 'undefined') {\n toReturn['socialCalendarReportUrl'] = this.socialCalendarReportUrl;\n }\n if (typeof this.emailMessage !== 'undefined') {\n toReturn['emailMessage'] = this.emailMessage;\n }\n return toReturn;\n }\n}\nfunction enumStringToValue$2(enumRef, value) {\n if (typeof value === 'number') {\n return value;\n }\n return enumRef[value];\n}\nclass ArchiveAuxiliaryDataFieldSchemaRequest {\n static fromProto(proto) {\n let m = new ArchiveAuxiliaryDataFieldSchemaRequest();\n m = Object.assign(m, proto);\n if (proto.identifier) {\n m.identifier = FieldSchemaIdentifier.fromProto(proto.identifier);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.identifier !== 'undefined' && this.identifier !== null) {\n toReturn['identifier'] = 'toApiJson' in this.identifier ? this.identifier.toApiJson() : this.identifier;\n }\n return toReturn;\n }\n}\nclass AuxiliaryDataFieldSchema {\n static fromProto(proto) {\n let m = new AuxiliaryDataFieldSchema();\n m = Object.assign(m, proto);\n if (proto.fieldType) {\n m.fieldType = enumStringToValue$2(AuxiliaryDataFieldType, proto.fieldType);\n }\n if (proto.created) {\n m.created = new Date(proto.created);\n }\n if (proto.updated) {\n m.updated = new Date(proto.updated);\n }\n if (proto.dropdownOptions) {\n m.dropdownOptions = proto.dropdownOptions.map(DropdownOption.fromProto);\n }\n if (proto.archived) {\n m.archived = new Date(proto.archived);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.partnerId !== 'undefined') {\n toReturn['partnerId'] = this.partnerId;\n }\n if (typeof this.fieldId !== 'undefined') {\n toReturn['fieldId'] = this.fieldId;\n }\n if (typeof this.fieldType !== 'undefined') {\n toReturn['fieldType'] = this.fieldType;\n }\n if (typeof this.fieldName !== 'undefined') {\n toReturn['fieldName'] = this.fieldName;\n }\n if (typeof this.fieldDescription !== 'undefined') {\n toReturn['fieldDescription'] = this.fieldDescription;\n }\n if (typeof this.created !== 'undefined' && this.created !== null) {\n toReturn['created'] = 'toApiJson' in this.created ? this.created.toApiJson() : this.created;\n }\n if (typeof this.updated !== 'undefined' && this.updated !== null) {\n toReturn['updated'] = 'toApiJson' in this.updated ? this.updated.toApiJson() : this.updated;\n }\n if (typeof this.dropdownOptions !== 'undefined' && this.dropdownOptions !== null) {\n toReturn['dropdownOptions'] = 'toApiJson' in this.dropdownOptions ? this.dropdownOptions.toApiJson() : this.dropdownOptions;\n }\n if (typeof this.currencyCode !== 'undefined') {\n toReturn['currencyCode'] = this.currencyCode;\n }\n if (typeof this.archived !== 'undefined' && this.archived !== null) {\n toReturn['archived'] = 'toApiJson' in this.archived ? this.archived.toApiJson() : this.archived;\n }\n if (typeof this.externalId !== 'undefined') {\n toReturn['externalId'] = this.externalId;\n }\n return toReturn;\n }\n}\nclass AuxiliaryDataObjectID {\n static fromProto(proto) {\n let m = new AuxiliaryDataObjectID();\n m = Object.assign(m, proto);\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.partnerId !== 'undefined') {\n toReturn['partnerId'] = this.partnerId;\n }\n if (typeof this.objectId !== 'undefined') {\n toReturn['objectId'] = this.objectId;\n }\n return toReturn;\n }\n}\nclass CreateAuxiliaryDataFieldSchemaRequest {\n static fromProto(proto) {\n let m = new CreateAuxiliaryDataFieldSchemaRequest();\n m = Object.assign(m, proto);\n if (proto.fieldSchema) {\n m.fieldSchema = AuxiliaryDataFieldSchema.fromProto(proto.fieldSchema);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.fieldSchema !== 'undefined' && this.fieldSchema !== null) {\n toReturn['fieldSchema'] = 'toApiJson' in this.fieldSchema ? this.fieldSchema.toApiJson() : this.fieldSchema;\n }\n return toReturn;\n }\n}\nclass DropdownOption {\n static fromProto(proto) {\n let m = new DropdownOption();\n m = Object.assign(m, proto);\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.label !== 'undefined') {\n toReturn['label'] = this.label;\n }\n if (typeof this.value !== 'undefined') {\n toReturn['value'] = this.value;\n }\n return toReturn;\n }\n}\nclass FieldDataUpsertOperation {\n static fromProto(proto) {\n let m = new FieldDataUpsertOperation();\n m = Object.assign(m, proto);\n if (proto.integer) {\n m.integer = parseInt(proto.integer, 10);\n }\n if (proto.date) {\n m.date = new Date(proto.date);\n }\n if (proto.currencyValue) {\n m.currencyValue = parseInt(proto.currencyValue, 10);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.fieldDataId !== 'undefined') {\n toReturn['fieldDataId'] = this.fieldDataId;\n }\n if (typeof this.externalId !== 'undefined') {\n toReturn['externalId'] = this.externalId;\n }\n if (typeof this.integer !== 'undefined') {\n toReturn['integer'] = this.integer;\n }\n if (typeof this.string !== 'undefined') {\n toReturn['string'] = this.string;\n }\n if (typeof this.date !== 'undefined' && this.date !== null) {\n toReturn['date'] = 'toApiJson' in this.date ? this.date.toApiJson() : this.date;\n }\n if (typeof this.dropdownValue !== 'undefined') {\n toReturn['dropdownValue'] = this.dropdownValue;\n }\n if (typeof this.currencyValue !== 'undefined') {\n toReturn['currencyValue'] = this.currencyValue;\n }\n if (typeof this.deleteValue !== 'undefined') {\n toReturn['deleteValue'] = this.deleteValue;\n }\n return toReturn;\n }\n}\nclass FieldSchemaIdentifier {\n static fromProto(proto) {\n let m = new FieldSchemaIdentifier();\n m = Object.assign(m, proto);\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.fieldId !== 'undefined') {\n toReturn['fieldId'] = this.fieldId;\n }\n if (typeof this.externalId !== 'undefined') {\n toReturn['externalId'] = this.externalId;\n }\n if (typeof this.partnerId !== 'undefined') {\n toReturn['partnerId'] = this.partnerId;\n }\n return toReturn;\n }\n}\nclass ListAuxiliaryDataFieldSchemaRequestFilters {\n static fromProto(proto) {\n let m = new ListAuxiliaryDataFieldSchemaRequestFilters();\n m = Object.assign(m, proto);\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.onlyArchived !== 'undefined') {\n toReturn['onlyArchived'] = this.onlyArchived;\n }\n return toReturn;\n }\n}\nclass GetAuxiliaryDataFieldSchemaRequest {\n static fromProto(proto) {\n let m = new GetAuxiliaryDataFieldSchemaRequest();\n m = Object.assign(m, proto);\n if (proto.identifier) {\n m.identifier = FieldSchemaIdentifier.fromProto(proto.identifier);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.identifier !== 'undefined' && this.identifier !== null) {\n toReturn['identifier'] = 'toApiJson' in this.identifier ? this.identifier.toApiJson() : this.identifier;\n }\n return toReturn;\n }\n}\nclass GetAuxiliaryDataFieldSchemaResponse {\n static fromProto(proto) {\n let m = new GetAuxiliaryDataFieldSchemaResponse();\n m = Object.assign(m, proto);\n if (proto.fieldSchema) {\n m.fieldSchema = AuxiliaryDataFieldSchema.fromProto(proto.fieldSchema);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.fieldSchema !== 'undefined' && this.fieldSchema !== null) {\n toReturn['fieldSchema'] = 'toApiJson' in this.fieldSchema ? this.fieldSchema.toApiJson() : this.fieldSchema;\n }\n return toReturn;\n }\n}\nclass GetMultiAuxiliaryDataFieldSchemaRequest {\n static fromProto(proto) {\n let m = new GetMultiAuxiliaryDataFieldSchemaRequest();\n m = Object.assign(m, proto);\n if (proto.identifiers) {\n m.identifiers = proto.identifiers.map(FieldSchemaIdentifier.fromProto);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.identifiers !== 'undefined' && this.identifiers !== null) {\n toReturn['identifiers'] = 'toApiJson' in this.identifiers ? this.identifiers.toApiJson() : this.identifiers;\n }\n return toReturn;\n }\n}\nclass GetMultiAuxiliaryDataFieldSchemaResponse {\n static fromProto(proto) {\n let m = new GetMultiAuxiliaryDataFieldSchemaResponse();\n m = Object.assign(m, proto);\n if (proto.fieldSchemas) {\n m.fieldSchemas = proto.fieldSchemas.map(AuxiliaryDataFieldSchema.fromProto);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.fieldSchemas !== 'undefined' && this.fieldSchemas !== null) {\n toReturn['fieldSchemas'] = 'toApiJson' in this.fieldSchemas ? this.fieldSchemas.toApiJson() : this.fieldSchemas;\n }\n return toReturn;\n }\n}\nclass ListAuxiliaryDataFieldSchemaRequest {\n static fromProto(proto) {\n let m = new ListAuxiliaryDataFieldSchemaRequest();\n m = Object.assign(m, proto);\n if (proto.pagingOptions) {\n m.pagingOptions = PagedRequestOptions.fromProto(proto.pagingOptions);\n }\n if (proto.filters) {\n m.filters = ListAuxiliaryDataFieldSchemaRequestFilters.fromProto(proto.filters);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.partnerId !== 'undefined') {\n toReturn['partnerId'] = this.partnerId;\n }\n if (typeof this.pagingOptions !== 'undefined' && this.pagingOptions !== null) {\n toReturn['pagingOptions'] = 'toApiJson' in this.pagingOptions ? this.pagingOptions.toApiJson() : this.pagingOptions;\n }\n if (typeof this.filters !== 'undefined' && this.filters !== null) {\n toReturn['filters'] = 'toApiJson' in this.filters ? this.filters.toApiJson() : this.filters;\n }\n return toReturn;\n }\n}\nclass ListAuxiliaryDataFieldSchemaResponse {\n static fromProto(proto) {\n let m = new ListAuxiliaryDataFieldSchemaResponse();\n m = Object.assign(m, proto);\n if (proto.fieldSchemas) {\n m.fieldSchemas = proto.fieldSchemas.map(AuxiliaryDataFieldSchema.fromProto);\n }\n if (proto.pagingMetadata) {\n m.pagingMetadata = PagedResponseMetadata.fromProto(proto.pagingMetadata);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.fieldSchemas !== 'undefined' && this.fieldSchemas !== null) {\n toReturn['fieldSchemas'] = 'toApiJson' in this.fieldSchemas ? this.fieldSchemas.toApiJson() : this.fieldSchemas;\n }\n if (typeof this.pagingMetadata !== 'undefined' && this.pagingMetadata !== null) {\n toReturn['pagingMetadata'] = 'toApiJson' in this.pagingMetadata ? this.pagingMetadata.toApiJson() : this.pagingMetadata;\n }\n return toReturn;\n }\n}\nclass ListAuxiliaryDataRequest {\n static fromProto(proto) {\n let m = new ListAuxiliaryDataRequest();\n m = Object.assign(m, proto);\n if (proto.auxiliaryDataObjectId) {\n m.auxiliaryDataObjectId = AuxiliaryDataObjectID.fromProto(proto.auxiliaryDataObjectId);\n }\n if (proto.pagingOptions) {\n m.pagingOptions = PagedRequestOptions.fromProto(proto.pagingOptions);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.auxiliaryDataObjectId !== 'undefined' && this.auxiliaryDataObjectId !== null) {\n toReturn['auxiliaryDataObjectId'] = 'toApiJson' in this.auxiliaryDataObjectId ? this.auxiliaryDataObjectId.toApiJson() : this.auxiliaryDataObjectId;\n }\n if (typeof this.pagingOptions !== 'undefined' && this.pagingOptions !== null) {\n toReturn['pagingOptions'] = 'toApiJson' in this.pagingOptions ? this.pagingOptions.toApiJson() : this.pagingOptions;\n }\n return toReturn;\n }\n}\nclass ListAuxiliaryDataResponse {\n static fromProto(proto) {\n let m = new ListAuxiliaryDataResponse();\n m = Object.assign(m, proto);\n if (proto.pagingMetadata) {\n m.pagingMetadata = PagedResponseMetadata.fromProto(proto.pagingMetadata);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.jsonSchema !== 'undefined') {\n toReturn['jsonSchema'] = this.jsonSchema;\n }\n if (typeof this.jsonData !== 'undefined') {\n toReturn['jsonData'] = this.jsonData;\n }\n if (typeof this.pagingMetadata !== 'undefined' && this.pagingMetadata !== null) {\n toReturn['pagingMetadata'] = 'toApiJson' in this.pagingMetadata ? this.pagingMetadata.toApiJson() : this.pagingMetadata;\n }\n return toReturn;\n }\n}\nclass UnarchiveAuxiliaryDataFieldSchemaRequest {\n static fromProto(proto) {\n let m = new UnarchiveAuxiliaryDataFieldSchemaRequest();\n m = Object.assign(m, proto);\n if (proto.identifier) {\n m.identifier = FieldSchemaIdentifier.fromProto(proto.identifier);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.identifier !== 'undefined' && this.identifier !== null) {\n toReturn['identifier'] = 'toApiJson' in this.identifier ? this.identifier.toApiJson() : this.identifier;\n }\n return toReturn;\n }\n}\nclass UpdateAuxiliaryDataFieldSchemaRequest {\n static fromProto(proto) {\n let m = new UpdateAuxiliaryDataFieldSchemaRequest();\n m = Object.assign(m, proto);\n if (proto.fieldSchema) {\n m.fieldSchema = AuxiliaryDataFieldSchema.fromProto(proto.fieldSchema);\n }\n if (proto.fieldMask) {\n m.fieldMask = FieldMask.fromProto(proto.fieldMask);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.fieldSchema !== 'undefined' && this.fieldSchema !== null) {\n toReturn['fieldSchema'] = 'toApiJson' in this.fieldSchema ? this.fieldSchema.toApiJson() : this.fieldSchema;\n }\n if (typeof this.fieldMask !== 'undefined' && this.fieldMask !== null) {\n toReturn['fieldMask'] = 'toApiJson' in this.fieldMask ? this.fieldMask.toApiJson() : this.fieldMask;\n }\n return toReturn;\n }\n}\nclass UpsertAuxiliaryDataRequest {\n static fromProto(proto) {\n let m = new UpsertAuxiliaryDataRequest();\n m = Object.assign(m, proto);\n if (proto.auxiliaryDataObjectId) {\n m.auxiliaryDataObjectId = AuxiliaryDataObjectID.fromProto(proto.auxiliaryDataObjectId);\n }\n if (proto.fieldDataUpsertOperations) {\n m.fieldDataUpsertOperations = proto.fieldDataUpsertOperations.map(FieldDataUpsertOperation.fromProto);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.auxiliaryDataObjectId !== 'undefined' && this.auxiliaryDataObjectId !== null) {\n toReturn['auxiliaryDataObjectId'] = 'toApiJson' in this.auxiliaryDataObjectId ? this.auxiliaryDataObjectId.toApiJson() : this.auxiliaryDataObjectId;\n }\n if (typeof this.fieldDataUpsertOperations !== 'undefined' && this.fieldDataUpsertOperations !== null) {\n toReturn['fieldDataUpsertOperations'] = 'toApiJson' in this.fieldDataUpsertOperations ? this.fieldDataUpsertOperations.toApiJson() : this.fieldDataUpsertOperations;\n }\n return toReturn;\n }\n}\nfunction enumStringToValue$1(enumRef, value) {\n if (typeof value === 'number') {\n return value;\n }\n return enumRef[value];\n}\nclass AccountChangedRequest {\n static fromProto(proto) {\n let m = new AccountChangedRequest();\n m = Object.assign(m, proto);\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.partnerId !== 'undefined') {\n toReturn['partnerId'] = this.partnerId;\n }\n if (typeof this.accountGroupId !== 'undefined') {\n toReturn['accountGroupId'] = this.accountGroupId;\n }\n if (typeof this.fieldChanged !== 'undefined') {\n toReturn['fieldChanged'] = this.fieldChanged;\n }\n if (typeof this.newValue !== 'undefined') {\n toReturn['newValue'] = this.newValue;\n }\n return toReturn;\n }\n}\nclass Activity {\n static fromProto(proto) {\n let m = new Activity();\n m = Object.assign(m, proto);\n if (proto.activityType) {\n m.activityType = enumStringToValue$1(ActivityTypes, proto.activityType);\n }\n if (proto.created) {\n m.created = new Date(proto.created);\n }\n if (proto.dateHappened) {\n m.dateHappened = new Date(proto.dateHappened);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.activityType !== 'undefined') {\n toReturn['activityType'] = this.activityType;\n }\n if (typeof this.partnerId !== 'undefined') {\n toReturn['partnerId'] = this.partnerId;\n }\n if (typeof this.accountGroupId !== 'undefined') {\n toReturn['accountGroupId'] = this.accountGroupId;\n }\n if (typeof this.creatorUserId !== 'undefined') {\n toReturn['creatorUserId'] = this.creatorUserId;\n }\n if (typeof this.content !== 'undefined') {\n toReturn['content'] = this.content;\n }\n if (typeof this.created !== 'undefined' && this.created !== null) {\n toReturn['created'] = 'toApiJson' in this.created ? this.created.toApiJson() : this.created;\n }\n if (typeof this.taskId !== 'undefined') {\n toReturn['taskId'] = this.taskId;\n }\n if (typeof this.dateHappenedKey !== 'undefined') {\n toReturn['dateHappenedKey'] = this.dateHappenedKey;\n }\n if (typeof this.dateHappened !== 'undefined' && this.dateHappened !== null) {\n toReturn['dateHappened'] = 'toApiJson' in this.dateHappened ? this.dateHappened.toApiJson() : this.dateHappened;\n }\n if (typeof this.activityId !== 'undefined') {\n toReturn['activityId'] = this.activityId;\n }\n if (typeof this.receivers !== 'undefined') {\n toReturn['receivers'] = this.receivers;\n }\n return toReturn;\n }\n}\nclass AddCommentRequest {\n static fromProto(proto) {\n let m = new AddCommentRequest();\n m = Object.assign(m, proto);\n if (proto.taskIdentity) {\n m.taskIdentity = TaskIdentity.fromProto(proto.taskIdentity);\n }\n if (proto.commentType) {\n m.commentType = enumStringToValue$1(CommentType, proto.commentType);\n }\n if (proto.location) {\n m.location = enumStringToValue$1(PlatformLocation, proto.location);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.taskIdentity !== 'undefined' && this.taskIdentity !== null) {\n toReturn['taskIdentity'] = 'toApiJson' in this.taskIdentity ? this.taskIdentity.toApiJson() : this.taskIdentity;\n }\n if (typeof this.message !== 'undefined') {\n toReturn['message'] = this.message;\n }\n if (typeof this.commentType !== 'undefined') {\n toReturn['commentType'] = this.commentType;\n }\n if (typeof this.userId !== 'undefined') {\n toReturn['userId'] = this.userId;\n }\n if (typeof this.location !== 'undefined') {\n toReturn['location'] = this.location;\n }\n return toReturn;\n }\n}\nclass AddConversationWithNotificationRequest {\n static fromProto(proto) {\n let m = new AddConversationWithNotificationRequest();\n m = Object.assign(m, proto);\n if (proto.addConversationRequest) {\n m.addConversationRequest = AddConversationRequest.fromProto(proto.addConversationRequest);\n }\n if (proto.conversationType) {\n m.conversationType = enumStringToValue$1(ConversationTypes, proto.conversationType);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.addConversationRequest !== 'undefined' && this.addConversationRequest !== null) {\n toReturn['addConversationRequest'] = 'toApiJson' in this.addConversationRequest ? this.addConversationRequest.toApiJson() : this.addConversationRequest;\n }\n if (typeof this.conversationType !== 'undefined') {\n toReturn['conversationType'] = this.conversationType;\n }\n return toReturn;\n }\n}\nclass AskQuestionRequest {\n static fromProto(proto) {\n let m = new AskQuestionRequest();\n m = Object.assign(m, proto);\n if (proto.persona) {\n m.persona = enumStringToValue$1(PersonaType, proto.persona);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.question !== 'undefined') {\n toReturn['question'] = this.question;\n }\n if (typeof this.askerUserId !== 'undefined') {\n toReturn['askerUserId'] = this.askerUserId;\n }\n if (typeof this.accountGroupId !== 'undefined') {\n toReturn['accountGroupId'] = this.accountGroupId;\n }\n if (typeof this.partnerId !== 'undefined') {\n toReturn['partnerId'] = this.partnerId;\n }\n if (typeof this.taskId !== 'undefined') {\n toReturn['taskId'] = this.taskId;\n }\n if (typeof this.persona !== 'undefined') {\n toReturn['persona'] = this.persona;\n }\n return toReturn;\n }\n}\nclass Comment {\n static fromProto(proto) {\n let m = new Comment();\n m = Object.assign(m, proto);\n if (proto.messageCreated) {\n m.messageCreated = new Date(proto.messageCreated);\n }\n if (proto.commentType) {\n m.commentType = enumStringToValue$1(CommentType, proto.commentType);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.senderName !== 'undefined') {\n toReturn['senderName'] = this.senderName;\n }\n if (typeof this.senderId !== 'undefined') {\n toReturn['senderId'] = this.senderId;\n }\n if (typeof this.messageId !== 'undefined') {\n toReturn['messageId'] = this.messageId;\n }\n if (typeof this.messageType !== 'undefined') {\n toReturn['messageType'] = this.messageType;\n }\n if (typeof this.messageText !== 'undefined') {\n toReturn['messageText'] = this.messageText;\n }\n if (typeof this.conversationId !== 'undefined') {\n toReturn['conversationId'] = this.conversationId;\n }\n if (typeof this.messageCreated !== 'undefined' && this.messageCreated !== null) {\n toReturn['messageCreated'] = 'toApiJson' in this.messageCreated ? this.messageCreated.toApiJson() : this.messageCreated;\n }\n if (typeof this.externalMessageId !== 'undefined') {\n toReturn['externalMessageId'] = this.externalMessageId;\n }\n if (typeof this.commentType !== 'undefined') {\n toReturn['commentType'] = this.commentType;\n }\n if (typeof this.senderImageUrl !== 'undefined') {\n toReturn['senderImageUrl'] = this.senderImageUrl;\n }\n return toReturn;\n }\n}\nclass CommentProjectionFilter {\n static fromProto(proto) {\n let m = new CommentProjectionFilter();\n m = Object.assign(m, proto);\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.retrieveSubtasks !== 'undefined') {\n toReturn['retrieveSubtasks'] = this.retrieveSubtasks;\n }\n if (typeof this.retrievePrivate !== 'undefined') {\n toReturn['retrievePrivate'] = this.retrievePrivate;\n }\n return toReturn;\n }\n}\nclass CreateActivityRequest {\n static fromProto(proto) {\n let m = new CreateActivityRequest();\n m = Object.assign(m, proto);\n if (proto.activity) {\n m.activity = Activity.fromProto(proto.activity);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.activity !== 'undefined' && this.activity !== null) {\n toReturn['activity'] = 'toApiJson' in this.activity ? this.activity.toApiJson() : this.activity;\n }\n return toReturn;\n }\n}\nclass CreateActivityResponse {\n static fromProto(proto) {\n let m = new CreateActivityResponse();\n m = Object.assign(m, proto);\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.activityId !== 'undefined') {\n toReturn['activityId'] = this.activityId;\n }\n return toReturn;\n }\n}\nclass CreateMultiProjectFromTemplateRequest {\n static fromProto(proto) {\n let m = new CreateMultiProjectFromTemplateRequest();\n m = Object.assign(m, proto);\n if (proto.createReq) {\n m.createReq = proto.createReq.map(CreateProjectFromTemplateRequest.fromProto);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.createReq !== 'undefined' && this.createReq !== null) {\n toReturn['createReq'] = 'toApiJson' in this.createReq ? this.createReq.toApiJson() : this.createReq;\n }\n return toReturn;\n }\n}\nclass CreateProjectFromTemplateRequest {\n static fromProto(proto) {\n let m = new CreateProjectFromTemplateRequest();\n m = Object.assign(m, proto);\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.partnerId !== 'undefined') {\n toReturn['partnerId'] = this.partnerId;\n }\n if (typeof this.accountId !== 'undefined') {\n toReturn['accountId'] = this.accountId;\n }\n if (typeof this.templateId !== 'undefined') {\n toReturn['templateId'] = this.templateId;\n }\n if (typeof this.parentIds !== 'undefined') {\n toReturn['parentIds'] = this.parentIds;\n }\n if (typeof this.activationId !== 'undefined') {\n toReturn['activationId'] = this.activationId;\n }\n if (typeof this.idempotencyKey !== 'undefined') {\n toReturn['idempotencyKey'] = this.idempotencyKey;\n }\n if (typeof this.triggeredByRecurringTask !== 'undefined') {\n toReturn['triggeredByRecurringTask'] = this.triggeredByRecurringTask;\n }\n if (typeof this.fulfillingPartnerId !== 'undefined') {\n toReturn['fulfillingPartnerId'] = this.fulfillingPartnerId;\n }\n if (typeof this.orderId !== 'undefined') {\n toReturn['orderId'] = this.orderId;\n }\n if (typeof this.fulfillmentOrderId !== 'undefined') {\n toReturn['fulfillmentOrderId'] = this.fulfillmentOrderId;\n }\n return toReturn;\n }\n}\nclass CreateProjectFromTemplateSynchronousResponse {\n static fromProto(proto) {\n let m = new CreateProjectFromTemplateSynchronousResponse();\n m = Object.assign(m, proto);\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.projectId !== 'undefined') {\n toReturn['projectId'] = this.projectId;\n }\n return toReturn;\n }\n}\nclass CreateTemplateFromProjectResponse {\n static fromProto(proto) {\n let m = new CreateTemplateFromProjectResponse();\n m = Object.assign(m, proto);\n if (proto.version) {\n m.version = parseInt(proto.version, 10);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.templateId !== 'undefined') {\n toReturn['templateId'] = this.templateId;\n }\n if (typeof this.version !== 'undefined') {\n toReturn['version'] = this.version;\n }\n return toReturn;\n }\n}\nclass DecryptNotesRequest {\n static fromProto(proto) {\n let m = new DecryptNotesRequest();\n m = Object.assign(m, proto);\n if (proto.identity) {\n m.identity = TaskIdentity.fromProto(proto.identity);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.identity !== 'undefined' && this.identity !== null) {\n toReturn['identity'] = 'toApiJson' in this.identity ? this.identity.toApiJson() : this.identity;\n }\n if (typeof this.encryptedNote !== 'undefined') {\n toReturn['encryptedNote'] = this.encryptedNote;\n }\n return toReturn;\n }\n}\nclass DecryptNotesResponse {\n static fromProto(proto) {\n let m = new DecryptNotesResponse();\n m = Object.assign(m, proto);\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.decryptedNote !== 'undefined') {\n toReturn['decryptedNote'] = this.decryptedNote;\n }\n return toReturn;\n }\n}\nclass EncryptNotesRequest {\n static fromProto(proto) {\n let m = new EncryptNotesRequest();\n m = Object.assign(m, proto);\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.partnerId !== 'undefined') {\n toReturn['partnerId'] = this.partnerId;\n }\n if (typeof this.notes !== 'undefined') {\n toReturn['notes'] = this.notes;\n }\n return toReturn;\n }\n}\nclass EncryptNotesResponse {\n static fromProto(proto) {\n let m = new EncryptNotesResponse();\n m = Object.assign(m, proto);\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.encryptedNote !== 'undefined') {\n toReturn['encryptedNote'] = this.encryptedNote;\n }\n return toReturn;\n }\n}\nclass GenerateFileUploadUrlRequest {\n static fromProto(proto) {\n let m = new GenerateFileUploadUrlRequest();\n m = Object.assign(m, proto);\n if (proto.identity) {\n m.identity = TaskIdentity.fromProto(proto.identity);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.identity !== 'undefined' && this.identity !== null) {\n toReturn['identity'] = 'toApiJson' in this.identity ? this.identity.toApiJson() : this.identity;\n }\n if (typeof this.filename !== 'undefined') {\n toReturn['filename'] = this.filename;\n }\n if (typeof this.contentType !== 'undefined') {\n toReturn['contentType'] = this.contentType;\n }\n return toReturn;\n }\n}\nclass GenerateFileUploadUrlResponse {\n static fromProto(proto) {\n let m = new GenerateFileUploadUrlResponse();\n m = Object.assign(m, proto);\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.uploadUrl !== 'undefined') {\n toReturn['uploadUrl'] = this.uploadUrl;\n }\n if (typeof this.shareableUrl !== 'undefined') {\n toReturn['shareableUrl'] = this.shareableUrl;\n }\n return toReturn;\n }\n}\nclass GetActivityRequest {\n static fromProto(proto) {\n let m = new GetActivityRequest();\n m = Object.assign(m, proto);\n if (proto.dateHappened) {\n m.dateHappened = new Date(proto.dateHappened);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.activityId !== 'undefined') {\n toReturn['activityId'] = this.activityId;\n }\n if (typeof this.partnerId !== 'undefined') {\n toReturn['partnerId'] = this.partnerId;\n }\n if (typeof this.dateHappened !== 'undefined' && this.dateHappened !== null) {\n toReturn['dateHappened'] = 'toApiJson' in this.dateHappened ? this.dateHappened.toApiJson() : this.dateHappened;\n }\n if (typeof this.accountGroupId !== 'undefined') {\n toReturn['accountGroupId'] = this.accountGroupId;\n }\n return toReturn;\n }\n}\nclass GetActivityResponse {\n static fromProto(proto) {\n let m = new GetActivityResponse();\n m = Object.assign(m, proto);\n if (proto.activity) {\n m.activity = Activity.fromProto(proto.activity);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.activity !== 'undefined' && this.activity !== null) {\n toReturn['activity'] = 'toApiJson' in this.activity ? this.activity.toApiJson() : this.activity;\n }\n return toReturn;\n }\n}\nclass GetAttachmentUrlRequest {\n static fromProto(proto) {\n let m = new GetAttachmentUrlRequest();\n m = Object.assign(m, proto);\n if (proto.identity) {\n m.identity = TaskIdentity.fromProto(proto.identity);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.identity !== 'undefined' && this.identity !== null) {\n toReturn['identity'] = 'toApiJson' in this.identity ? this.identity.toApiJson() : this.identity;\n }\n if (typeof this.attachmentId !== 'undefined') {\n toReturn['attachmentId'] = this.attachmentId;\n }\n return toReturn;\n }\n}\nclass GetAttachmentUrlResponse {\n static fromProto(proto) {\n let m = new GetAttachmentUrlResponse();\n m = Object.assign(m, proto);\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.url !== 'undefined') {\n toReturn['url'] = this.url;\n }\n if (typeof this.contentType !== 'undefined') {\n toReturn['contentType'] = this.contentType;\n }\n return toReturn;\n }\n}\nclass GetCommentCountRequest {\n static fromProto(proto) {\n let m = new GetCommentCountRequest();\n m = Object.assign(m, proto);\n if (proto.identity) {\n m.identity = TaskIdentity.fromProto(proto.identity);\n }\n if (proto.projectionFilter) {\n m.projectionFilter = CommentProjectionFilter.fromProto(proto.projectionFilter);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.identity !== 'undefined' && this.identity !== null) {\n toReturn['identity'] = 'toApiJson' in this.identity ? this.identity.toApiJson() : this.identity;\n }\n if (typeof this.projectionFilter !== 'undefined' && this.projectionFilter !== null) {\n toReturn['projectionFilter'] = 'toApiJson' in this.projectionFilter ? this.projectionFilter.toApiJson() : this.projectionFilter;\n }\n return toReturn;\n }\n}\nclass GetCommentCountResponse {\n static fromProto(proto) {\n let m = new GetCommentCountResponse();\n m = Object.assign(m, proto);\n if (proto.identity) {\n m.identity = TaskIdentity.fromProto(proto.identity);\n }\n if (proto.comments) {\n m.comments = parseInt(proto.comments, 10);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.identity !== 'undefined' && this.identity !== null) {\n toReturn['identity'] = 'toApiJson' in this.identity ? this.identity.toApiJson() : this.identity;\n }\n if (typeof this.comments !== 'undefined') {\n toReturn['comments'] = this.comments;\n }\n return toReturn;\n }\n}\nclass GetFulfilledPartnersRequest {\n static fromProto(proto) {\n let m = new GetFulfilledPartnersRequest();\n m = Object.assign(m, proto);\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.fulfillingPartnerId !== 'undefined') {\n toReturn['fulfillingPartnerId'] = this.fulfillingPartnerId;\n }\n return toReturn;\n }\n}\nclass GetFulfilledPartnersResponse {\n static fromProto(proto) {\n let m = new GetFulfilledPartnersResponse();\n m = Object.assign(m, proto);\n if (proto.partnerBrands) {\n m.partnerBrands = proto.partnerBrands.map(PartnerBranding.fromProto);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.partnerBrands !== 'undefined' && this.partnerBrands !== null) {\n toReturn['partnerBrands'] = 'toApiJson' in this.partnerBrands ? this.partnerBrands.toApiJson() : this.partnerBrands;\n }\n return toReturn;\n }\n}\nclass GetMeetingHostRequest {\n static fromProto(proto) {\n let m = new GetMeetingHostRequest();\n m = Object.assign(m, proto);\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.taskManagerHostId !== 'undefined') {\n toReturn['taskManagerHostId'] = this.taskManagerHostId;\n }\n return toReturn;\n }\n}\nclass GetMeetingHostResponse {\n static fromProto(proto) {\n let m = new GetMeetingHostResponse();\n m = Object.assign(m, proto);\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.userId !== 'undefined') {\n toReturn['userId'] = this.userId;\n }\n if (typeof this.displayName !== 'undefined') {\n toReturn['displayName'] = this.displayName;\n }\n if (typeof this.agencyName !== 'undefined') {\n toReturn['agencyName'] = this.agencyName;\n }\n if (typeof this.displayProfileUrl !== 'undefined') {\n toReturn['displayProfileUrl'] = this.displayProfileUrl;\n }\n if (typeof this.displayLogoUrl !== 'undefined') {\n toReturn['displayLogoUrl'] = this.displayLogoUrl;\n }\n if (typeof this.email !== 'undefined') {\n toReturn['email'] = this.email;\n }\n if (typeof this.phoneNumbers !== 'undefined') {\n toReturn['phoneNumbers'] = this.phoneNumbers;\n }\n if (typeof this.schedulerUrl !== 'undefined') {\n toReturn['schedulerUrl'] = this.schedulerUrl;\n }\n return toReturn;\n }\n}\nclass GetMultiCommentCountRequest {\n static fromProto(proto) {\n let m = new GetMultiCommentCountRequest();\n m = Object.assign(m, proto);\n if (proto.identities) {\n m.identities = proto.identities.map(TaskIdentity.fromProto);\n }\n if (proto.projectionFilter) {\n m.projectionFilter = CommentProjectionFilter.fromProto(proto.projectionFilter);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.identities !== 'undefined' && this.identities !== null) {\n toReturn['identities'] = 'toApiJson' in this.identities ? this.identities.toApiJson() : this.identities;\n }\n if (typeof this.projectionFilter !== 'undefined' && this.projectionFilter !== null) {\n toReturn['projectionFilter'] = 'toApiJson' in this.projectionFilter ? this.projectionFilter.toApiJson() : this.projectionFilter;\n }\n return toReturn;\n }\n}\nclass GetMultiCommentCountResponse {\n static fromProto(proto) {\n let m = new GetMultiCommentCountResponse();\n m = Object.assign(m, proto);\n if (proto.commentCounts) {\n m.commentCounts = proto.commentCounts.map(GetCommentCountResponse.fromProto);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.commentCounts !== 'undefined' && this.commentCounts !== null) {\n toReturn['commentCounts'] = 'toApiJson' in this.commentCounts ? this.commentCounts.toApiJson() : this.commentCounts;\n }\n return toReturn;\n }\n}\nclass GetProductEntryUrlRequest {\n static fromProto(proto) {\n let m = new GetProductEntryUrlRequest();\n m = Object.assign(m, proto);\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.productId !== 'undefined') {\n toReturn['productId'] = this.productId;\n }\n if (typeof this.businessId !== 'undefined') {\n toReturn['businessId'] = this.businessId;\n }\n if (typeof this.nextUrl !== 'undefined') {\n toReturn['nextUrl'] = this.nextUrl;\n }\n return toReturn;\n }\n}\nclass GetProductEntryUrlResponse {\n static fromProto(proto) {\n let m = new GetProductEntryUrlResponse();\n m = Object.assign(m, proto);\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.entryUrl !== 'undefined') {\n toReturn['entryUrl'] = this.entryUrl;\n }\n return toReturn;\n }\n}\nclass GetSalesPersonBySubjectIDRequest {\n static fromProto(proto) {\n let m = new GetSalesPersonBySubjectIDRequest();\n m = Object.assign(m, proto);\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.partnerId !== 'undefined') {\n toReturn['partnerId'] = this.partnerId;\n }\n if (typeof this.subjectId !== 'undefined') {\n toReturn['subjectId'] = this.subjectId;\n }\n return toReturn;\n }\n}\nclass GetSalesPersonBySubjectIDResponse {\n static fromProto(proto) {\n let m = new GetSalesPersonBySubjectIDResponse();\n m = Object.assign(m, proto);\n if (proto.lastLogin) {\n m.lastLogin = new Date(proto.lastLogin);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.salespersonId !== 'undefined') {\n toReturn['salespersonId'] = this.salespersonId;\n }\n if (typeof this.firstName !== 'undefined') {\n toReturn['firstName'] = this.firstName;\n }\n if (typeof this.lastName !== 'undefined') {\n toReturn['lastName'] = this.lastName;\n }\n if (typeof this.email !== 'undefined') {\n toReturn['email'] = this.email;\n }\n if (typeof this.phoneNumber !== 'undefined') {\n toReturn['phoneNumber'] = this.phoneNumber;\n }\n if (typeof this.userId !== 'undefined') {\n toReturn['userId'] = this.userId;\n }\n if (typeof this.countryCode !== 'undefined') {\n toReturn['countryCode'] = this.countryCode;\n }\n if (typeof this.marketId !== 'undefined') {\n toReturn['marketId'] = this.marketId;\n }\n if (typeof this.photoUrlHttps !== 'undefined') {\n toReturn['photoUrlHttps'] = this.photoUrlHttps;\n }\n if (typeof this.lastLogin !== 'undefined' && this.lastLogin !== null) {\n toReturn['lastLogin'] = 'toApiJson' in this.lastLogin ? this.lastLogin.toApiJson() : this.lastLogin;\n }\n if (typeof this.jobTitle !== 'undefined') {\n toReturn['jobTitle'] = this.jobTitle;\n }\n return toReturn;\n }\n}\nclass GetTaskHistoryRequest {\n static fromProto(proto) {\n let m = new GetTaskHistoryRequest();\n m = Object.assign(m, proto);\n if (proto.taskIdentity) {\n m.taskIdentity = TaskIdentity.fromProto(proto.taskIdentity);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.taskIdentity !== 'undefined' && this.taskIdentity !== null) {\n toReturn['taskIdentity'] = 'toApiJson' in this.taskIdentity ? this.taskIdentity.toApiJson() : this.taskIdentity;\n }\n return toReturn;\n }\n}\nclass GetTaskHistoryResponse {\n static fromProto(proto) {\n let m = new GetTaskHistoryResponse();\n m = Object.assign(m, proto);\n if (proto.histories) {\n m.histories = proto.histories.map(TaskHistory.fromProto);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.histories !== 'undefined' && this.histories !== null) {\n toReturn['histories'] = 'toApiJson' in this.histories ? this.histories.toApiJson() : this.histories;\n }\n return toReturn;\n }\n}\nclass ListActivitiesRequest {\n static fromProto(proto) {\n let m = new ListActivitiesRequest();\n m = Object.assign(m, proto);\n if (proto.pagingOptions) {\n m.pagingOptions = PagedRequestOptions.fromProto(proto.pagingOptions);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.partnerId !== 'undefined') {\n toReturn['partnerId'] = this.partnerId;\n }\n if (typeof this.accountGroupId !== 'undefined') {\n toReturn['accountGroupId'] = this.accountGroupId;\n }\n if (typeof this.pagingOptions !== 'undefined' && this.pagingOptions !== null) {\n toReturn['pagingOptions'] = 'toApiJson' in this.pagingOptions ? this.pagingOptions.toApiJson() : this.pagingOptions;\n }\n return toReturn;\n }\n}\nclass ListActivitiesResponse {\n static fromProto(proto) {\n let m = new ListActivitiesResponse();\n m = Object.assign(m, proto);\n if (proto.activities) {\n m.activities = proto.activities.map(Activity.fromProto);\n }\n if (proto.pagingMetadata) {\n m.pagingMetadata = PagedResponseMetadata.fromProto(proto.pagingMetadata);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.activities !== 'undefined' && this.activities !== null) {\n toReturn['activities'] = 'toApiJson' in this.activities ? this.activities.toApiJson() : this.activities;\n }\n if (typeof this.pagingMetadata !== 'undefined' && this.pagingMetadata !== null) {\n toReturn['pagingMetadata'] = 'toApiJson' in this.pagingMetadata ? this.pagingMetadata.toApiJson() : this.pagingMetadata;\n }\n return toReturn;\n }\n}\nclass LoadCommentsRequest {\n static fromProto(proto) {\n let m = new LoadCommentsRequest();\n m = Object.assign(m, proto);\n if (proto.identity) {\n m.identity = TaskIdentity.fromProto(proto.identity);\n }\n if (proto.projectionFilter) {\n m.projectionFilter = CommentProjectionFilter.fromProto(proto.projectionFilter);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.identity !== 'undefined' && this.identity !== null) {\n toReturn['identity'] = 'toApiJson' in this.identity ? this.identity.toApiJson() : this.identity;\n }\n if (typeof this.projectionFilter !== 'undefined' && this.projectionFilter !== null) {\n toReturn['projectionFilter'] = 'toApiJson' in this.projectionFilter ? this.projectionFilter.toApiJson() : this.projectionFilter;\n }\n return toReturn;\n }\n}\nclass LoadCommentsResponse {\n static fromProto(proto) {\n let m = new LoadCommentsResponse();\n m = Object.assign(m, proto);\n if (proto.messages) {\n m.messages = proto.messages.map(Comment.fromProto);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.messages !== 'undefined' && this.messages !== null) {\n toReturn['messages'] = 'toApiJson' in this.messages ? this.messages.toApiJson() : this.messages;\n }\n return toReturn;\n }\n}\nclass NotifyReviewCommentRequest {\n static fromProto(proto) {\n let m = new NotifyReviewCommentRequest();\n m = Object.assign(m, proto);\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.reviewId !== 'undefined') {\n toReturn['reviewId'] = this.reviewId;\n }\n if (typeof this.reviewCommentMessage !== 'undefined') {\n toReturn['reviewCommentMessage'] = this.reviewCommentMessage;\n }\n return toReturn;\n }\n}\nclass PartnerBranding {\n static fromProto(proto) {\n let m = new PartnerBranding();\n m = Object.assign(m, proto);\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.partnerId !== 'undefined') {\n toReturn['partnerId'] = this.partnerId;\n }\n if (typeof this.partnerName !== 'undefined') {\n toReturn['partnerName'] = this.partnerName;\n }\n return toReturn;\n }\n}\nclass RespondToSocialCommentRequest {\n static fromProto(proto) {\n let m = new RespondToSocialCommentRequest();\n m = Object.assign(m, proto);\n if (proto.identity) {\n m.identity = TaskIdentity.fromProto(proto.identity);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.identity !== 'undefined' && this.identity !== null) {\n toReturn['identity'] = 'toApiJson' in this.identity ? this.identity.toApiJson() : this.identity;\n }\n if (typeof this.socialPostId !== 'undefined') {\n toReturn['socialPostId'] = this.socialPostId;\n }\n if (typeof this.socialCommentId !== 'undefined') {\n toReturn['socialCommentId'] = this.socialCommentId;\n }\n if (typeof this.respondingUserId !== 'undefined') {\n toReturn['respondingUserId'] = this.respondingUserId;\n }\n if (typeof this.response !== 'undefined') {\n toReturn['response'] = this.response;\n }\n return toReturn;\n }\n}\nclass RespondToSocialCommentResponse {\n static fromProto(proto) {\n let m = new RespondToSocialCommentResponse();\n m = Object.assign(m, proto);\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.socialCommentId !== 'undefined') {\n toReturn['socialCommentId'] = this.socialCommentId;\n }\n return toReturn;\n }\n}\nclass RestoreParentAndChildrenMultiRequest {\n static fromProto(proto) {\n let m = new RestoreParentAndChildrenMultiRequest();\n m = Object.assign(m, proto);\n if (proto.parentTaskIdentities) {\n m.parentTaskIdentities = proto.parentTaskIdentities.map(TaskIdentity.fromProto);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.parentTaskIdentities !== 'undefined' && this.parentTaskIdentities !== null) {\n toReturn['parentTaskIdentities'] = 'toApiJson' in this.parentTaskIdentities ? this.parentTaskIdentities.toApiJson() : this.parentTaskIdentities;\n }\n return toReturn;\n }\n}\nclass SendEmailRequest {\n static fromProto(proto) {\n let m = new SendEmailRequest();\n m = Object.assign(m, proto);\n if (proto.identity) {\n m.identity = TaskIdentity.fromProto(proto.identity);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.identity !== 'undefined' && this.identity !== null) {\n toReturn['identity'] = 'toApiJson' in this.identity ? this.identity.toApiJson() : this.identity;\n }\n if (typeof this.digitalAgentId !== 'undefined') {\n toReturn['digitalAgentId'] = this.digitalAgentId;\n }\n if (typeof this.subject !== 'undefined') {\n toReturn['subject'] = this.subject;\n }\n if (typeof this.message !== 'undefined') {\n toReturn['message'] = this.message;\n }\n if (typeof this.recipients !== 'undefined') {\n toReturn['recipients'] = this.recipients;\n }\n if (typeof this.ccRecipients !== 'undefined') {\n toReturn['ccRecipients'] = this.ccRecipients;\n }\n if (typeof this.bccRecipients !== 'undefined') {\n toReturn['bccRecipients'] = this.bccRecipients;\n }\n return toReturn;\n }\n}\nclass SendFeedbackRequest {\n static fromProto(proto) {\n let m = new SendFeedbackRequest();\n m = Object.assign(m, proto);\n if (proto.conversationType) {\n m.conversationType = enumStringToValue$1(ConversationTypes, proto.conversationType);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.namespace !== 'undefined') {\n toReturn['namespace'] = this.namespace;\n }\n if (typeof this.parentPath !== 'undefined') {\n toReturn['parentPath'] = this.parentPath;\n }\n if (typeof this.taskId !== 'undefined') {\n toReturn['taskId'] = this.taskId;\n }\n if (typeof this.message !== 'undefined') {\n toReturn['message'] = this.message;\n }\n if (typeof this.sendFrom !== 'undefined') {\n toReturn['sendFrom'] = this.sendFrom;\n }\n if (typeof this.sendTo !== 'undefined') {\n toReturn['sendTo'] = this.sendTo;\n }\n if (typeof this.source !== 'undefined') {\n toReturn['source'] = this.source;\n }\n if (typeof this.conversationType !== 'undefined') {\n toReturn['conversationType'] = this.conversationType;\n }\n return toReturn;\n }\n}\nclass SendNotificationRequest {\n static fromProto(proto) {\n let m = new SendNotificationRequest();\n m = Object.assign(m, proto);\n if (proto.identity) {\n m.identity = TaskIdentity.fromProto(proto.identity);\n }\n if (proto.version) {\n m.version = parseInt(proto.version, 10);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.notificationId !== 'undefined') {\n toReturn['notificationId'] = this.notificationId;\n }\n if (typeof this.identity !== 'undefined' && this.identity !== null) {\n toReturn['identity'] = 'toApiJson' in this.identity ? this.identity.toApiJson() : this.identity;\n }\n if (typeof this.version !== 'undefined') {\n toReturn['version'] = this.version;\n }\n return toReturn;\n }\n}\nclass SendNotificationResponse {\n static fromProto(proto) {\n let m = new SendNotificationResponse();\n m = Object.assign(m, proto);\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n return toReturn;\n }\n}\nclass SetMeetingTaskInfoRequest {\n static fromProto(proto) {\n let m = new SetMeetingTaskInfoRequest();\n m = Object.assign(m, proto);\n if (proto.identity) {\n m.identity = TaskIdentity.fromProto(proto.identity);\n }\n if (proto.startDate) {\n m.startDate = new Date(proto.startDate);\n }\n if (proto.meetingSource) {\n m.meetingSource = parseInt(proto.meetingSource, 10);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.identity !== 'undefined' && this.identity !== null) {\n toReturn['identity'] = 'toApiJson' in this.identity ? this.identity.toApiJson() : this.identity;\n }\n if (typeof this.meetingId !== 'undefined') {\n toReturn['meetingId'] = this.meetingId;\n }\n if (typeof this.startDate !== 'undefined' && this.startDate !== null) {\n toReturn['startDate'] = 'toApiJson' in this.startDate ? this.startDate.toApiJson() : this.startDate;\n }\n if (typeof this.meetingSource !== 'undefined') {\n toReturn['meetingSource'] = this.meetingSource;\n }\n if (typeof this.topic !== 'undefined') {\n toReturn['topic'] = this.topic;\n }\n return toReturn;\n }\n}\nclass TaskHistory {\n static fromProto(proto) {\n let m = new TaskHistory();\n m = Object.assign(m, proto);\n if (proto.created) {\n m.created = new Date(proto.created);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.created !== 'undefined' && this.created !== null) {\n toReturn['created'] = 'toApiJson' in this.created ? this.created.toApiJson() : this.created;\n }\n if (typeof this.user !== 'undefined') {\n toReturn['user'] = this.user;\n }\n if (typeof this.message !== 'undefined') {\n toReturn['message'] = this.message;\n }\n return toReturn;\n }\n}\nfunction enumStringToValue(enumRef, value) {\n if (typeof value === 'number') {\n return value;\n }\n return enumRef[value];\n}\nclass GetOrderFormForProjectRequest {\n static fromProto(proto) {\n let m = new GetOrderFormForProjectRequest();\n m = Object.assign(m, proto);\n if (proto.projectIdentity) {\n m.projectIdentity = TaskIdentity.fromProto(proto.projectIdentity);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.businessId !== 'undefined') {\n toReturn['businessId'] = this.businessId;\n }\n if (typeof this.orderId !== 'undefined') {\n toReturn['orderId'] = this.orderId;\n }\n if (typeof this.projectIdentity !== 'undefined' && this.projectIdentity !== null) {\n toReturn['projectIdentity'] = 'toApiJson' in this.projectIdentity ? this.projectIdentity.toApiJson() : this.projectIdentity;\n }\n return toReturn;\n }\n}\nclass GetOrderFormForProjectResponse {\n static fromProto(proto) {\n let m = new GetOrderFormForProjectResponse();\n m = Object.assign(m, proto);\n if (proto.commonFields) {\n m.commonFields = proto.commonFields.map(OrderFormFieldSubmission.fromProto);\n }\n if (proto.customFields) {\n m.customFields = proto.customFields.map(OrderFormFieldSubmission.fromProto);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.commonFields !== 'undefined' && this.commonFields !== null) {\n toReturn['commonFields'] = 'toApiJson' in this.commonFields ? this.commonFields.toApiJson() : this.commonFields;\n }\n if (typeof this.customFields !== 'undefined' && this.customFields !== null) {\n toReturn['customFields'] = 'toApiJson' in this.customFields ? this.customFields.toApiJson() : this.customFields;\n }\n return toReturn;\n }\n}\nclass OrderFormFieldSubmission {\n static fromProto(proto) {\n let m = new OrderFormFieldSubmission();\n m = Object.assign(m, proto);\n if (proto.answerFile) {\n m.answerFile = proto.answerFile.map(OrderFormFileField.fromProto);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.type !== 'undefined') {\n toReturn['type'] = this.type;\n }\n if (typeof this.description !== 'undefined') {\n toReturn['description'] = this.description;\n }\n if (typeof this.id !== 'undefined') {\n toReturn['id'] = this.id;\n }\n if (typeof this.label !== 'undefined') {\n toReturn['label'] = this.label;\n }\n if (typeof this.answer !== 'undefined') {\n toReturn['answer'] = this.answer;\n }\n if (typeof this.answerFile !== 'undefined' && this.answerFile !== null) {\n toReturn['answerFile'] = 'toApiJson' in this.answerFile ? this.answerFile.toApiJson() : this.answerFile;\n }\n return toReturn;\n }\n}\nclass OrderFormFileField {\n static fromProto(proto) {\n let m = new OrderFormFileField();\n m = Object.assign(m, proto);\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.name !== 'undefined') {\n toReturn['name'] = this.name;\n }\n if (typeof this.url !== 'undefined') {\n toReturn['url'] = this.url;\n }\n return toReturn;\n }\n}\n\n// *********************************\n// Code generated by sdkgen\n// DO NOT EDIT!.\n//\n// Objects Index.\n// *********************************\n\nconst environment = (window ? window['environment'] : 'prod') ?? 'prod';\nconst hostMap = {\n 'local': 'task-manager-api.vendasta-local.com',\n 'test': '',\n 'demo': 'task-manager-api-demo.apigateway.co',\n 'prod': 'task-manager-api-prod.apigateway.co',\n 'production': 'task-manager-api-prod.apigateway.co'\n};\nlet HostService = /*#__PURE__*/(() => {\n class HostService {\n get host() {\n return hostMap[environment.toLowerCase()];\n }\n get hostWithScheme() {\n return 'https://' + this.host;\n }\n }\n HostService.ɵfac = function HostService_Factory(t) {\n return new (t || HostService)();\n };\n HostService.ɵprov = /* @__PURE__ */i0.ɵɵdefineInjectable({\n token: HostService,\n factory: HostService.ɵfac,\n providedIn: 'root'\n });\n return HostService;\n})();\n(() => {\n (typeof ngDevMode === \"undefined\" || ngDevMode) && void 0;\n})();\n\n// *********************************\n// Code generated by sdkgen\n// DO NOT EDIT!.\n//\n// API Service.\n// *********************************\nlet AccountProductDetailsApiService = /*#__PURE__*/(() => {\n class AccountProductDetailsApiService {\n constructor(http, hostService) {\n this.http = http;\n this.hostService = hostService;\n this._host = this.hostService.hostWithScheme;\n }\n apiOptions() {\n return {\n headers: new HttpHeaders({\n 'Content-Type': 'application/json'\n }),\n withCredentials: true\n };\n }\n getAccountProductDetails(r) {\n const request = r.toApiJson ? r : new GetAccountProductDetailsRequest(r);\n return this.http.post(this._host + \"/taskmanager.v1.AccountProductDetails/GetAccountProductDetails\", request.toApiJson(), this.apiOptions()).pipe(map(resp => GetAccountProductDetailsResponse.fromProto(resp)));\n }\n getAccountVendorProductDetails(r) {\n const request = r.toApiJson ? r : new GetAccountVendorProductDetailsRequest(r);\n return this.http.post(this._host + \"/taskmanager.v1.AccountProductDetails/GetAccountVendorProductDetails\", request.toApiJson(), this.apiOptions()).pipe(map(resp => GetAccountProductDetailsResponse.fromProto(resp)));\n }\n }\n AccountProductDetailsApiService.ɵfac = function AccountProductDetailsApiService_Factory(t) {\n return new (t || AccountProductDetailsApiService)(i0.ɵɵinject(i1.HttpClient), i0.ɵɵinject(HostService));\n };\n AccountProductDetailsApiService.ɵprov = /* @__PURE__ */i0.ɵɵdefineInjectable({\n token: AccountProductDetailsApiService,\n factory: AccountProductDetailsApiService.ɵfac,\n providedIn: 'root'\n });\n return AccountProductDetailsApiService;\n})();\n(() => {\n (typeof ngDevMode === \"undefined\" || ngDevMode) && void 0;\n})();\n\n// *********************************\n// Code generated by sdkgen\n// DO NOT EDIT!.\n//\n// API Service.\n// *********************************\nlet AccountsApiService = /*#__PURE__*/(() => {\n class AccountsApiService {\n constructor(http, hostService) {\n this.http = http;\n this.hostService = hostService;\n this._host = this.hostService.hostWithScheme;\n }\n apiOptions() {\n return {\n headers: new HttpHeaders({\n 'Content-Type': 'application/json'\n }),\n withCredentials: true\n };\n }\n getTaskAccounts(r) {\n const request = r.toApiJson ? r : new GetTaskAccountsRequest(r);\n return this.http.post(this._host + \"/taskmanager.v1.Accounts/GetTaskAccounts\", request.toApiJson(), this.apiOptions()).pipe(map(resp => GetTaskAccountsResponse.fromProto(resp)));\n }\n getTaskConciergeAccount(r) {\n const request = r.toApiJson ? r : new GetTaskConciergeAccountRequest(r);\n return this.http.post(this._host + \"/taskmanager.v1.Accounts/GetTaskConciergeAccount\", request.toApiJson(), this.apiOptions()).pipe(map(resp => GetTaskConciergeAccountResponse.fromProto(resp)));\n }\n getPurchasingPartnerConciergeAccount(r) {\n const request = r.toApiJson ? r : new GetPurchasingPartnerConciergeAccountRequest(r);\n return this.http.post(this._host + \"/taskmanager.v1.Accounts/GetPurchasingPartnerConciergeAccount\", request.toApiJson(), this.apiOptions()).pipe(map(resp => GetPurchasingPartnerConciergeAccountResponse.fromProto(resp)));\n }\n getPurchasingPartnerAccount(r) {\n const request = r.toApiJson ? r : new GetPurchasingPartnerAccountRequest(r);\n return this.http.post(this._host + \"/taskmanager.v1.Accounts/GetPurchasingPartnerAccount\", request.toApiJson(), this.apiOptions()).pipe(map(resp => GetPurchasingPartnerAccountResponse.fromProto(resp)));\n }\n setAccountNote(r) {\n const request = r.toApiJson ? r : new SetAccountNoteRequest(r);\n return this.http.post(this._host + \"/taskmanager.v1.Accounts/SetAccountNote\", request.toApiJson(), {\n ...this.apiOptions(),\n observe: 'response'\n });\n }\n getAccountListingSourcesSettings(r) {\n const request = r.toApiJson ? r : new GetAccountListingSourcesSettingsRequest(r);\n return this.http.post(this._host + \"/taskmanager.v1.Accounts/GetAccountListingSourcesSettings\", request.toApiJson(), this.apiOptions()).pipe(map(resp => SourceSettingsResponse.fromProto(resp)));\n }\n updateAccountListingSource(r) {\n const request = r.toApiJson ? r : new UpdateAccountListingSourceRequest(r);\n return this.http.post(this._host + \"/taskmanager.v1.Accounts/UpdateAccountListingSource\", request.toApiJson(), {\n ...this.apiOptions(),\n observe: 'response'\n });\n }\n updateAccountMultiListingSource(r) {\n const request = r.toApiJson ? r : new UpdateAccountMultiListingSourceRequest(r);\n return this.http.post(this._host + \"/taskmanager.v1.Accounts/UpdateAccountMultiListingSource\", request.toApiJson(), {\n ...this.apiOptions(),\n observe: 'response'\n });\n }\n listAccountSocialServices(r) {\n const request = r.toApiJson ? r : new ListAccountSocialServicesRequest(r);\n return this.http.post(this._host + \"/taskmanager.v1.Accounts/ListAccountSocialServices\", request.toApiJson(), this.apiOptions()).pipe(map(resp => ListAccountSocialServicesResponse.fromProto(resp)));\n }\n listCommitmentDates(r) {\n const request = r.toApiJson ? r : new ListCommitmentDatesRequest(r);\n return this.http.post(this._host + \"/taskmanager.v1.Accounts/ListCommitmentDates\", request.toApiJson(), this.apiOptions()).pipe(map(resp => ListCommitmentDatesResponse.fromProto(resp)));\n }\n getSalesOrderFormSubmissionInfo(r) {\n const request = r.toApiJson ? r : new GetSalesOrderFormSubmissionInfoRequest(r);\n return this.http.post(this._host + \"/taskmanager.v1.Accounts/GetSalesOrderFormSubmissionInfo\", request.toApiJson(), this.apiOptions()).pipe(map(resp => GetSalesOrderFormSubmissionInfoResponse.fromProto(resp)));\n }\n deactivateConciergeAccount(r) {\n const request = r.toApiJson ? r : new DeactivateConciergeAccountRequest(r);\n return this.http.post(this._host + \"/taskmanager.v1.Accounts/DeactivateConciergeAccount\", request.toApiJson(), {\n ...this.apiOptions(),\n observe: 'response'\n });\n }\n pauseConciergeAccount(r) {\n const request = r.toApiJson ? r : new PauseConciergeAccountRequest(r);\n return this.http.post(this._host + \"/taskmanager.v1.Accounts/PauseConciergeAccount\", request.toApiJson(), {\n ...this.apiOptions(),\n observe: 'response'\n });\n }\n createConciergeAccount(r) {\n const request = r.toApiJson ? r : new CreateConciergeAccountRequest(r);\n return this.http.post(this._host + \"/taskmanager.v1.Accounts/CreateConciergeAccount\", request.toApiJson(), {\n ...this.apiOptions(),\n observe: 'response'\n });\n }\n }\n AccountsApiService.ɵfac = function AccountsApiService_Factory(t) {\n return new (t || AccountsApiService)(i0.ɵɵinject(i1.HttpClient), i0.ɵɵinject(HostService));\n };\n AccountsApiService.ɵprov = /* @__PURE__ */i0.ɵɵdefineInjectable({\n token: AccountsApiService,\n factory: AccountsApiService.ɵfac,\n providedIn: 'root'\n });\n return AccountsApiService;\n})();\n(() => {\n (typeof ngDevMode === \"undefined\" || ngDevMode) && void 0;\n})();\n\n// *********************************\n// Code generated by sdkgen\n// DO NOT EDIT!.\n//\n// API Service.\n// *********************************\nlet BusinessFulfillmentSettingsApiService = /*#__PURE__*/(() => {\n class BusinessFulfillmentSettingsApiService {\n constructor(http, hostService) {\n this.http = http;\n this.hostService = hostService;\n this._host = this.hostService.hostWithScheme;\n }\n apiOptions() {\n return {\n headers: new HttpHeaders({\n 'Content-Type': 'application/json'\n }),\n withCredentials: true\n };\n }\n create(r) {\n const request = r.toApiJson ? r : new CreateBusinessFulfillmentSettingRequest(r);\n return this.http.post(this._host + \"/taskmanager.v1.BusinessFulfillmentSettings/Create\", request.toApiJson(), {\n ...this.apiOptions(),\n observe: 'response'\n });\n }\n get(r) {\n const request = r.toApiJson ? r : new GetBusinessFulfillmentSettingRequest(r);\n return this.http.post(this._host + \"/taskmanager.v1.BusinessFulfillmentSettings/Get\", request.toApiJson(), this.apiOptions()).pipe(map(resp => GetBusinessFulfillmentSettingResponse.fromProto(resp)));\n }\n addProducts(r) {\n const request = r.toApiJson ? r : new AddProductsRequest(r);\n return this.http.post(this._host + \"/taskmanager.v1.BusinessFulfillmentSettings/AddProducts\", request.toApiJson(), {\n ...this.apiOptions(),\n observe: 'response'\n });\n }\n removeProducts(r) {\n const request = r.toApiJson ? r : new RemoveProductsRequest(r);\n return this.http.post(this._host + \"/taskmanager.v1.BusinessFulfillmentSettings/RemoveProducts\", request.toApiJson(), {\n ...this.apiOptions(),\n observe: 'response'\n });\n }\n delete(r) {\n const request = r.toApiJson ? r : new DeleteBusinessFulfillmentSettingRequest(r);\n return this.http.post(this._host + \"/taskmanager.v1.BusinessFulfillmentSettings/Delete\", request.toApiJson(), {\n ...this.apiOptions(),\n observe: 'response'\n });\n }\n }\n BusinessFulfillmentSettingsApiService.ɵfac = function BusinessFulfillmentSettingsApiService_Factory(t) {\n return new (t || BusinessFulfillmentSettingsApiService)(i0.ɵɵinject(i1.HttpClient), i0.ɵɵinject(HostService));\n };\n BusinessFulfillmentSettingsApiService.ɵprov = /* @__PURE__ */i0.ɵɵdefineInjectable({\n token: BusinessFulfillmentSettingsApiService,\n factory: BusinessFulfillmentSettingsApiService.ɵfac,\n providedIn: 'root'\n });\n return BusinessFulfillmentSettingsApiService;\n})();\n(() => {\n (typeof ngDevMode === \"undefined\" || ngDevMode) && void 0;\n})();\n\n// *********************************\n// Code generated by sdkgen\n// DO NOT EDIT!.\n//\n// API Service.\n// *********************************\nlet CustomTagsApiService = /*#__PURE__*/(() => {\n class CustomTagsApiService {\n constructor(http, hostService) {\n this.http = http;\n this.hostService = hostService;\n this._host = this.hostService.hostWithScheme;\n }\n apiOptions() {\n return {\n headers: new HttpHeaders({\n 'Content-Type': 'application/json'\n }),\n withCredentials: true\n };\n }\n addCustomTag(r) {\n const request = r.toApiJson ? r : new AddCustomTagsRequest(r);\n return this.http.post(this._host + \"/taskmanager.v1.CustomTags/AddCustomTag\", request.toApiJson(), this.apiOptions()).pipe(map(resp => CommandResponse.fromProto(resp)));\n }\n removeCustomTag(r) {\n const request = r.toApiJson ? r : new RemoveCustomTagsRequest(r);\n return this.http.post(this._host + \"/taskmanager.v1.CustomTags/RemoveCustomTag\", request.toApiJson(), this.apiOptions()).pipe(map(resp => CommandResponse.fromProto(resp)));\n }\n getCustomTag(r) {\n const request = r.toApiJson ? r : new GetCustomTagRequest(r);\n return this.http.post(this._host + \"/taskmanager.v1.CustomTags/GetCustomTag\", request.toApiJson(), this.apiOptions()).pipe(map(resp => GetCustomTagResponse.fromProto(resp)));\n }\n getMultiCustomTag(r) {\n const request = r.toApiJson ? r : new GetMultiCustomTagRequest(r);\n return this.http.post(this._host + \"/taskmanager.v1.CustomTags/GetMultiCustomTag\", request.toApiJson(), this.apiOptions()).pipe(map(resp => GetMultiCustomTagResponse.fromProto(resp)));\n }\n listCustomTags(r) {\n const request = r.toApiJson ? r : new ListCustomTagsRequest(r);\n return this.http.post(this._host + \"/taskmanager.v1.CustomTags/ListCustomTags\", request.toApiJson(), this.apiOptions()).pipe(map(resp => ListCustomTagsResponse.fromProto(resp)));\n }\n createCustomTag(r) {\n const request = r.toApiJson ? r : new CreateCustomTagRequest(r);\n return this.http.post(this._host + \"/taskmanager.v1.CustomTags/CreateCustomTag\", request.toApiJson(), this.apiOptions()).pipe(map(resp => CreateCustomTagResponse.fromProto(resp)));\n }\n updateCustomTag(r) {\n const request = r.toApiJson ? r : new UpdateCustomTagRequest(r);\n return this.http.post(this._host + \"/taskmanager.v1.CustomTags/UpdateCustomTag\", request.toApiJson(), {\n ...this.apiOptions(),\n observe: 'response'\n });\n }\n deleteCustomTag(r) {\n const request = r.toApiJson ? r : new DeleteCustomTagRequest(r);\n return this.http.post(this._host + \"/taskmanager.v1.CustomTags/DeleteCustomTag\", request.toApiJson(), {\n ...this.apiOptions(),\n observe: 'response'\n });\n }\n }\n CustomTagsApiService.ɵfac = function CustomTagsApiService_Factory(t) {\n return new (t || CustomTagsApiService)(i0.ɵɵinject(i1.HttpClient), i0.ɵɵinject(HostService));\n };\n CustomTagsApiService.ɵprov = /* @__PURE__ */i0.ɵɵdefineInjectable({\n token: CustomTagsApiService,\n factory: CustomTagsApiService.ɵfac,\n providedIn: 'root'\n });\n return CustomTagsApiService;\n})();\n(() => {\n (typeof ngDevMode === \"undefined\" || ngDevMode) && void 0;\n})();\n\n// *********************************\n// Code generated by sdkgen\n// DO NOT EDIT!.\n//\n// API Service.\n// *********************************\nlet DigitalAgentsApiService = /*#__PURE__*/(() => {\n class DigitalAgentsApiService {\n constructor(http, hostService) {\n this.http = http;\n this.hostService = hostService;\n this._host = this.hostService.hostWithScheme;\n }\n apiOptions() {\n return {\n headers: new HttpHeaders({\n 'Content-Type': 'application/json'\n }),\n withCredentials: true\n };\n }\n listAssigneesForPartner(r) {\n const request = r.toApiJson ? r : new ListAssigneesForPartnerRequest(r);\n return this.http.post(this._host + \"/taskmanager.v1.DigitalAgents/ListAssigneesForPartner\", request.toApiJson(), this.apiOptions()).pipe(map(resp => ListAssigneesForPartnerResponse.fromProto(resp)));\n }\n getDigitalAgentsByUserIds(r) {\n const request = r.toApiJson ? r : new GetDigitalAgentsByUserIdsRequest(r);\n return this.http.post(this._host + \"/taskmanager.v1.DigitalAgents/GetDigitalAgentsByUserIds\", request.toApiJson(), this.apiOptions()).pipe(map(resp => GetDigitalAgentsByUserIdsResponse.fromProto(resp)));\n }\n getDigitalAgentsBySubjectIds(r) {\n const request = r.toApiJson ? r : new GetDigitalAgentsBySubjectIdsRequest(r);\n return this.http.post(this._host + \"/taskmanager.v1.DigitalAgents/GetDigitalAgentsBySubjectIds\", request.toApiJson(), this.apiOptions()).pipe(map(resp => GetDigitalAgentsBySubjectIdsResponse.fromProto(resp)));\n }\n createDigitalAgent(r) {\n const request = r.toApiJson ? r : new CreateDigitalAgentRequest(r);\n return this.http.post(this._host + \"/taskmanager.v1.DigitalAgents/CreateDigitalAgent\", request.toApiJson(), this.apiOptions()).pipe(map(resp => DigitalAgent.fromProto(resp)));\n }\n updateDigitalAgent(r) {\n const request = r.toApiJson ? r : new UpdateDigitalAgentRequest(r);\n return this.http.post(this._host + \"/taskmanager.v1.DigitalAgents/UpdateDigitalAgent\", request.toApiJson(), this.apiOptions()).pipe(map(resp => DigitalAgent.fromProto(resp)));\n }\n getMultiUserInfoExternal(r) {\n const request = r.toApiJson ? r : new GetMultiUserInfoExternalRequest(r);\n return this.http.post(this._host + \"/taskmanager.v1.DigitalAgents/GetMultiUserInfoExternal\", request.toApiJson(), this.apiOptions()).pipe(map(resp => GetMultiUserInfoExternalResponse.fromProto(resp)));\n }\n deleteUser(r) {\n const request = r.toApiJson ? r : new DeleteUserRequest(r);\n return this.http.post(this._host + \"/taskmanager.v1.DigitalAgents/DeleteUser\", request.toApiJson(), {\n ...this.apiOptions(),\n observe: 'response'\n });\n }\n sendWelcomeEmail(r) {\n const request = r.toApiJson ? r : new SendWelcomeEmailRequest(r);\n return this.http.post(this._host + \"/taskmanager.v1.DigitalAgents/SendWelcomeEmail\", request.toApiJson(), {\n ...this.apiOptions(),\n observe: 'response'\n });\n }\n }\n DigitalAgentsApiService.ɵfac = function DigitalAgentsApiService_Factory(t) {\n return new (t || DigitalAgentsApiService)(i0.ɵɵinject(i1.HttpClient), i0.ɵɵinject(HostService));\n };\n DigitalAgentsApiService.ɵprov = /* @__PURE__ */i0.ɵɵdefineInjectable({\n token: DigitalAgentsApiService,\n factory: DigitalAgentsApiService.ɵfac,\n providedIn: 'root'\n });\n return DigitalAgentsApiService;\n})();\n(() => {\n (typeof ngDevMode === \"undefined\" || ngDevMode) && void 0;\n})();\n\n// *********************************\n// Code generated by sdkgen\n// DO NOT EDIT!.\n//\n// API Service.\n// *********************************\nlet GroupApiService = /*#__PURE__*/(() => {\n class GroupApiService {\n constructor(http, hostService) {\n this.http = http;\n this.hostService = hostService;\n this._host = this.hostService.hostWithScheme;\n }\n apiOptions() {\n return {\n headers: new HttpHeaders({\n 'Content-Type': 'application/json'\n }),\n withCredentials: true\n };\n }\n createGroup(r) {\n const request = r.toApiJson ? r : new CreateGroupRequest(r);\n return this.http.post(this._host + \"/taskmanager.v1.Group/CreateGroup\", request.toApiJson(), this.apiOptions()).pipe(map(resp => CreateGroupResponse.fromProto(resp)));\n }\n addGroupMembers(r) {\n const request = r.toApiJson ? r : new AddGroupMembersRequest(r);\n return this.http.post(this._host + \"/taskmanager.v1.Group/AddGroupMembers\", request.toApiJson(), {\n ...this.apiOptions(),\n observe: 'response'\n });\n }\n removeGroupMembers(r) {\n const request = r.toApiJson ? r : new RemoveGroupMembersRequest(r);\n return this.http.post(this._host + \"/taskmanager.v1.Group/RemoveGroupMembers\", request.toApiJson(), {\n ...this.apiOptions(),\n observe: 'response'\n });\n }\n listGroupMembers(r) {\n const request = r.toApiJson ? r : new ListGroupMembersRequest(r);\n return this.http.post(this._host + \"/taskmanager.v1.Group/ListGroupMembers\", request.toApiJson(), this.apiOptions()).pipe(map(resp => ListGroupMembersResponse.fromProto(resp)));\n }\n listGroup(r) {\n const request = r.toApiJson ? r : new ListGroupRequest(r);\n return this.http.post(this._host + \"/taskmanager.v1.Group/ListGroup\", request.toApiJson(), this.apiOptions()).pipe(map(resp => ListGroupResponse.fromProto(resp)));\n }\n updateGroupName(r) {\n const request = r.toApiJson ? r : new UpdateGroupNameRequest(r);\n return this.http.post(this._host + \"/taskmanager.v1.Group/UpdateGroupName\", request.toApiJson(), {\n ...this.apiOptions(),\n observe: 'response'\n });\n }\n deleteGroup(r) {\n const request = r.toApiJson ? r : new DeleteGroupRequest(r);\n return this.http.post(this._host + \"/taskmanager.v1.Group/DeleteGroup\", request.toApiJson(), {\n ...this.apiOptions(),\n observe: 'response'\n });\n }\n listGroupsByMembers(r) {\n const request = r.toApiJson ? r : new ListGroupsByMembersRequest(r);\n return this.http.post(this._host + \"/taskmanager.v1.Group/ListGroupsByMembers\", request.toApiJson(), this.apiOptions()).pipe(map(resp => ListGroupsByMembersResponse.fromProto(resp)));\n }\n getMulti(r) {\n const request = r.toApiJson ? r : new GroupGetMultiRequest(r);\n return this.http.post(this._host + \"/taskmanager.v1.Group/GetMulti\", request.toApiJson(), this.apiOptions()).pipe(map(resp => GroupGetMultiResponse.fromProto(resp)));\n }\n }\n GroupApiService.ɵfac = function GroupApiService_Factory(t) {\n return new (t || GroupApiService)(i0.ɵɵinject(i1.HttpClient), i0.ɵɵinject(HostService));\n };\n GroupApiService.ɵprov = /* @__PURE__ */i0.ɵɵdefineInjectable({\n token: GroupApiService,\n factory: GroupApiService.ɵfac,\n providedIn: 'root'\n });\n return GroupApiService;\n})();\n(() => {\n (typeof ngDevMode === \"undefined\" || ngDevMode) && void 0;\n})();\n\n// *********************************\n// Code generated by sdkgen\n// DO NOT EDIT!.\n//\n// API Service.\n// *********************************\nlet MetricsApiService = /*#__PURE__*/(() => {\n class MetricsApiService {\n constructor(http, hostService) {\n this.http = http;\n this.hostService = hostService;\n this._host = this.hostService.hostWithScheme;\n }\n apiOptions() {\n return {\n headers: new HttpHeaders({\n 'Content-Type': 'application/json'\n }),\n withCredentials: true\n };\n }\n getProjectSubtaskCount(r) {\n const request = r.toApiJson ? r : new ProjectSubtaskCountRequest(r);\n return this.http.post(this._host + \"/taskmanager.v1.Metrics/GetProjectSubtaskCount\", request.toApiJson(), this.apiOptions()).pipe(map(resp => ProjectSubtaskCountResponse.fromProto(resp)));\n }\n exportProjects(r) {\n const request = r.toApiJson ? r : new ExportProjectsRequest(r);\n return this.http.post(this._host + \"/taskmanager.v1.Metrics/ExportProjects\", request.toApiJson(), {\n ...this.apiOptions(),\n observe: 'response'\n });\n }\n }\n MetricsApiService.ɵfac = function MetricsApiService_Factory(t) {\n return new (t || MetricsApiService)(i0.ɵɵinject(i1.HttpClient), i0.ɵɵinject(HostService));\n };\n MetricsApiService.ɵprov = /* @__PURE__ */i0.ɵɵdefineInjectable({\n token: MetricsApiService,\n factory: MetricsApiService.ɵfac,\n providedIn: 'root'\n });\n return MetricsApiService;\n})();\n(() => {\n (typeof ngDevMode === \"undefined\" || ngDevMode) && void 0;\n})();\n\n// *********************************\n// Code generated by sdkgen\n// DO NOT EDIT!.\n//\n// API Service.\n// *********************************\nlet OrderFormApiService = /*#__PURE__*/(() => {\n class OrderFormApiService {\n constructor(http, hostService) {\n this.http = http;\n this.hostService = hostService;\n this._host = this.hostService.hostWithScheme;\n }\n apiOptions() {\n return {\n headers: new HttpHeaders({\n 'Content-Type': 'application/json'\n }),\n withCredentials: true\n };\n }\n getOrderFormForProject(r) {\n const request = r.toApiJson ? r : new GetOrderFormForProjectRequest(r);\n return this.http.post(this._host + \"/taskmanager.v1.OrderForm/GetOrderFormForProject\", request.toApiJson(), this.apiOptions()).pipe(map(resp => GetOrderFormForProjectResponse.fromProto(resp)));\n }\n }\n OrderFormApiService.ɵfac = function OrderFormApiService_Factory(t) {\n return new (t || OrderFormApiService)(i0.ɵɵinject(i1.HttpClient), i0.ɵɵinject(HostService));\n };\n OrderFormApiService.ɵprov = /* @__PURE__ */i0.ɵɵdefineInjectable({\n token: OrderFormApiService,\n factory: OrderFormApiService.ɵfac,\n providedIn: 'root'\n });\n return OrderFormApiService;\n})();\n(() => {\n (typeof ngDevMode === \"undefined\" || ngDevMode) && void 0;\n})();\n\n// *********************************\n// Code generated by sdkgen\n// DO NOT EDIT!.\n//\n// API Service.\n// *********************************\nlet ProductFulfillmentApiService = /*#__PURE__*/(() => {\n class ProductFulfillmentApiService {\n constructor(http, hostService) {\n this.http = http;\n this.hostService = hostService;\n this._host = this.hostService.hostWithScheme;\n }\n apiOptions() {\n return {\n headers: new HttpHeaders({\n 'Content-Type': 'application/json'\n }),\n withCredentials: true\n };\n }\n listVndaProducts(r) {\n const request = r.toApiJson ? r : new ListProductsRequest(r);\n return this.http.post(this._host + \"/taskmanager.v1.ProductFulfillment/ListVNDAProducts\", request.toApiJson(), this.apiOptions()).pipe(map(resp => ListProductsResponse.fromProto(resp)));\n }\n }\n ProductFulfillmentApiService.ɵfac = function ProductFulfillmentApiService_Factory(t) {\n return new (t || ProductFulfillmentApiService)(i0.ɵɵinject(i1.HttpClient), i0.ɵɵinject(HostService));\n };\n ProductFulfillmentApiService.ɵprov = /* @__PURE__ */i0.ɵɵdefineInjectable({\n token: ProductFulfillmentApiService,\n factory: ProductFulfillmentApiService.ɵfac,\n providedIn: 'root'\n });\n return ProductFulfillmentApiService;\n})();\n(() => {\n (typeof ngDevMode === \"undefined\" || ngDevMode) && void 0;\n})();\n\n// *********************************\n// Code generated by sdkgen\n// DO NOT EDIT!.\n//\n// API Service.\n// *********************************\nlet ProductFulfillmentSettingsApiService = /*#__PURE__*/(() => {\n class ProductFulfillmentSettingsApiService {\n constructor(http, hostService) {\n this.http = http;\n this.hostService = hostService;\n this._host = this.hostService.hostWithScheme;\n }\n apiOptions() {\n return {\n headers: new HttpHeaders({\n 'Content-Type': 'application/json'\n }),\n withCredentials: true\n };\n }\n create(r) {\n const request = r.toApiJson ? r : new CreateProductFulfillmentSettingRequest(r);\n return this.http.post(this._host + \"/taskmanager.v1.ProductFulfillmentSettings/Create\", request.toApiJson(), {\n ...this.apiOptions(),\n observe: 'response'\n });\n }\n getMulti(r) {\n const request = r.toApiJson ? r : new GetMultiProductFulfillmentSettingRequest(r);\n return this.http.post(this._host + \"/taskmanager.v1.ProductFulfillmentSettings/GetMulti\", request.toApiJson(), this.apiOptions()).pipe(map(resp => GetMultiProductFulfillmentSettingResponse.fromProto(resp)));\n }\n lookup(r) {\n const request = r.toApiJson ? r : new LookupProductFulfillmentSettingRequest(r);\n return this.http.post(this._host + \"/taskmanager.v1.ProductFulfillmentSettings/Lookup\", request.toApiJson(), this.apiOptions()).pipe(map(resp => LookupProductFulfillmentSettingResponse.fromProto(resp)));\n }\n setFulfillingPartner(r) {\n const request = r.toApiJson ? r : new SetFulfillingPartnerRequest(r);\n return this.http.post(this._host + \"/taskmanager.v1.ProductFulfillmentSettings/SetFulfillingPartner\", request.toApiJson(), {\n ...this.apiOptions(),\n observe: 'response'\n });\n }\n delete(r) {\n const request = r.toApiJson ? r : new DeleteProductFulfillmentSettingRequest(r);\n return this.http.post(this._host + \"/taskmanager.v1.ProductFulfillmentSettings/Delete\", request.toApiJson(), {\n ...this.apiOptions(),\n observe: 'response'\n });\n }\n setTemplate(r) {\n const request = r.toApiJson ? r : new SetTemplateRequest(r);\n return this.http.post(this._host + \"/taskmanager.v1.ProductFulfillmentSettings/SetTemplate\", request.toApiJson(), {\n ...this.apiOptions(),\n observe: 'response'\n });\n }\n }\n ProductFulfillmentSettingsApiService.ɵfac = function ProductFulfillmentSettingsApiService_Factory(t) {\n return new (t || ProductFulfillmentSettingsApiService)(i0.ɵɵinject(i1.HttpClient), i0.ɵɵinject(HostService));\n };\n ProductFulfillmentSettingsApiService.ɵprov = /* @__PURE__ */i0.ɵɵdefineInjectable({\n token: ProductFulfillmentSettingsApiService,\n factory: ProductFulfillmentSettingsApiService.ɵfac,\n providedIn: 'root'\n });\n return ProductFulfillmentSettingsApiService;\n})();\n(() => {\n (typeof ngDevMode === \"undefined\" || ngDevMode) && void 0;\n})();\n\n// *********************************\n// Code generated by sdkgen\n// DO NOT EDIT!.\n//\n// API Service.\n// *********************************\nlet RecurringTasksApiService = /*#__PURE__*/(() => {\n class RecurringTasksApiService {\n constructor(http, hostService) {\n this.http = http;\n this.hostService = hostService;\n this._host = this.hostService.hostWithScheme;\n }\n apiOptions() {\n return {\n headers: new HttpHeaders({\n 'Content-Type': 'application/json'\n }),\n withCredentials: true\n };\n }\n create(r) {\n const request = r.toApiJson ? r : new CreateRecurringTaskRequest(r);\n return this.http.post(this._host + \"/taskmanager.v1.RecurringTasks/Create\", request.toApiJson(), this.apiOptions()).pipe(map(resp => CreateRecurringTaskResponse.fromProto(resp)));\n }\n get(r) {\n const request = r.toApiJson ? r : new GetRecurringTaskRequest(r);\n return this.http.post(this._host + \"/taskmanager.v1.RecurringTasks/Get\", request.toApiJson(), this.apiOptions()).pipe(map(resp => GetRecurringTaskResponse.fromProto(resp)));\n }\n search(r) {\n const request = r.toApiJson ? r : new SearchRecurringTaskRequest(r);\n return this.http.post(this._host + \"/taskmanager.v1.RecurringTasks/Search\", request.toApiJson(), this.apiOptions()).pipe(map(resp => SearchRecurringTaskResponse.fromProto(resp)));\n }\n update(r) {\n const request = r.toApiJson ? r : new UpdateRecurringTaskRequest(r);\n return this.http.post(this._host + \"/taskmanager.v1.RecurringTasks/Update\", request.toApiJson(), this.apiOptions()).pipe(map(resp => UpdateRecurringTaskResponse.fromProto(resp)));\n }\n delete(r) {\n const request = r.toApiJson ? r : new DeleteRecurringTaskRequest(r);\n return this.http.post(this._host + \"/taskmanager.v1.RecurringTasks/Delete\", request.toApiJson(), {\n ...this.apiOptions(),\n observe: 'response'\n });\n }\n }\n RecurringTasksApiService.ɵfac = function RecurringTasksApiService_Factory(t) {\n return new (t || RecurringTasksApiService)(i0.ɵɵinject(i1.HttpClient), i0.ɵɵinject(HostService));\n };\n RecurringTasksApiService.ɵprov = /* @__PURE__ */i0.ɵɵdefineInjectable({\n token: RecurringTasksApiService,\n factory: RecurringTasksApiService.ɵfac,\n providedIn: 'root'\n });\n return RecurringTasksApiService;\n})();\n(() => {\n (typeof ngDevMode === \"undefined\" || ngDevMode) && void 0;\n})();\n\n// *********************************\n// Code generated by sdkgen\n// DO NOT EDIT!.\n//\n// API Service.\n// *********************************\nlet SocialCalendarApiService = /*#__PURE__*/(() => {\n class SocialCalendarApiService {\n constructor(http, hostService) {\n this.http = http;\n this.hostService = hostService;\n this._host = this.hostService.hostWithScheme;\n }\n apiOptions() {\n return {\n headers: new HttpHeaders({\n 'Content-Type': 'application/json'\n }),\n withCredentials: true\n };\n }\n sendCalendarForClientFeedbackExternal(r) {\n const request = r.toApiJson ? r : new SendCalendarForClientFeedbackExternalRequest(r);\n return this.http.post(this._host + \"/taskmanager.v1.SocialCalendar/SendCalendarForClientFeedbackExternal\", request.toApiJson(), {\n ...this.apiOptions(),\n observe: 'response'\n });\n }\n addSocialPostSubtask(r) {\n const request = r.toApiJson ? r : new AddSocialPostSubtaskRequest(r);\n return this.http.post(this._host + \"/taskmanager.v1.SocialCalendar/AddSocialPostSubtask\", request.toApiJson(), {\n ...this.apiOptions(),\n observe: 'response'\n });\n }\n }\n SocialCalendarApiService.ɵfac = function SocialCalendarApiService_Factory(t) {\n return new (t || SocialCalendarApiService)(i0.ɵɵinject(i1.HttpClient), i0.ɵɵinject(HostService));\n };\n SocialCalendarApiService.ɵprov = /* @__PURE__ */i0.ɵɵdefineInjectable({\n token: SocialCalendarApiService,\n factory: SocialCalendarApiService.ɵfac,\n providedIn: 'root'\n });\n return SocialCalendarApiService;\n})();\n(() => {\n (typeof ngDevMode === \"undefined\" || ngDevMode) && void 0;\n})();\n\n// *********************************\n// Code generated by sdkgen\n// DO NOT EDIT!.\n//\n// API Service.\n// *********************************\nlet TaskAuxiliaryFieldDataApiService = /*#__PURE__*/(() => {\n class TaskAuxiliaryFieldDataApiService {\n constructor(http, hostService) {\n this.http = http;\n this.hostService = hostService;\n this._host = this.hostService.hostWithScheme;\n }\n apiOptions() {\n return {\n headers: new HttpHeaders({\n 'Content-Type': 'application/json'\n }),\n withCredentials: true\n };\n }\n listAuxiliaryData(r) {\n const request = r.toApiJson ? r : new ListAuxiliaryDataRequest(r);\n return this.http.post(this._host + \"/taskmanager.v1.TaskAuxiliaryFieldData/ListAuxiliaryData\", request.toApiJson(), this.apiOptions()).pipe(map(resp => ListAuxiliaryDataResponse.fromProto(resp)));\n }\n upsertAuxiliaryData(r) {\n const request = r.toApiJson ? r : new UpsertAuxiliaryDataRequest(r);\n return this.http.post(this._host + \"/taskmanager.v1.TaskAuxiliaryFieldData/UpsertAuxiliaryData\", request.toApiJson(), {\n ...this.apiOptions(),\n observe: 'response'\n });\n }\n }\n TaskAuxiliaryFieldDataApiService.ɵfac = function TaskAuxiliaryFieldDataApiService_Factory(t) {\n return new (t || TaskAuxiliaryFieldDataApiService)(i0.ɵɵinject(i1.HttpClient), i0.ɵɵinject(HostService));\n };\n TaskAuxiliaryFieldDataApiService.ɵprov = /* @__PURE__ */i0.ɵɵdefineInjectable({\n token: TaskAuxiliaryFieldDataApiService,\n factory: TaskAuxiliaryFieldDataApiService.ɵfac,\n providedIn: 'root'\n });\n return TaskAuxiliaryFieldDataApiService;\n})();\n(() => {\n (typeof ngDevMode === \"undefined\" || ngDevMode) && void 0;\n})();\n\n// *********************************\n// Code generated by sdkgen\n// DO NOT EDIT!.\n//\n// API Service.\n// *********************************\nlet TaskAuxiliaryFieldSchemaApiService = /*#__PURE__*/(() => {\n class TaskAuxiliaryFieldSchemaApiService {\n constructor(http, hostService) {\n this.http = http;\n this.hostService = hostService;\n this._host = this.hostService.hostWithScheme;\n }\n apiOptions() {\n return {\n headers: new HttpHeaders({\n 'Content-Type': 'application/json'\n }),\n withCredentials: true\n };\n }\n createAuxiliaryDataFieldSchema(r) {\n const request = r.toApiJson ? r : new CreateAuxiliaryDataFieldSchemaRequest(r);\n return this.http.post(this._host + \"/taskmanager.v1.TaskAuxiliaryFieldSchema/CreateAuxiliaryDataFieldSchema\", request.toApiJson(), {\n ...this.apiOptions(),\n observe: 'response'\n });\n }\n getAuxiliaryDataFieldSchema(r) {\n const request = r.toApiJson ? r : new GetAuxiliaryDataFieldSchemaRequest(r);\n return this.http.post(this._host + \"/taskmanager.v1.TaskAuxiliaryFieldSchema/GetAuxiliaryDataFieldSchema\", request.toApiJson(), this.apiOptions()).pipe(map(resp => GetAuxiliaryDataFieldSchemaResponse.fromProto(resp)));\n }\n getMultiAuxiliaryDataFieldSchema(r) {\n const request = r.toApiJson ? r : new GetMultiAuxiliaryDataFieldSchemaRequest(r);\n return this.http.post(this._host + \"/taskmanager.v1.TaskAuxiliaryFieldSchema/GetMultiAuxiliaryDataFieldSchema\", request.toApiJson(), this.apiOptions()).pipe(map(resp => GetMultiAuxiliaryDataFieldSchemaResponse.fromProto(resp)));\n }\n listAuxiliaryDataFieldSchema(r) {\n const request = r.toApiJson ? r : new ListAuxiliaryDataFieldSchemaRequest(r);\n return this.http.post(this._host + \"/taskmanager.v1.TaskAuxiliaryFieldSchema/ListAuxiliaryDataFieldSchema\", request.toApiJson(), this.apiOptions()).pipe(map(resp => ListAuxiliaryDataFieldSchemaResponse.fromProto(resp)));\n }\n updateAuxiliaryDataFieldSchema(r) {\n const request = r.toApiJson ? r : new UpdateAuxiliaryDataFieldSchemaRequest(r);\n return this.http.post(this._host + \"/taskmanager.v1.TaskAuxiliaryFieldSchema/UpdateAuxiliaryDataFieldSchema\", request.toApiJson(), {\n ...this.apiOptions(),\n observe: 'response'\n });\n }\n archiveAuxiliaryDataFieldSchema(r) {\n const request = r.toApiJson ? r : new ArchiveAuxiliaryDataFieldSchemaRequest(r);\n return this.http.post(this._host + \"/taskmanager.v1.TaskAuxiliaryFieldSchema/ArchiveAuxiliaryDataFieldSchema\", request.toApiJson(), {\n ...this.apiOptions(),\n observe: 'response'\n });\n }\n unarchiveAuxiliaryDataFieldSchema(r) {\n const request = r.toApiJson ? r : new UnarchiveAuxiliaryDataFieldSchemaRequest(r);\n return this.http.post(this._host + \"/taskmanager.v1.TaskAuxiliaryFieldSchema/UnarchiveAuxiliaryDataFieldSchema\", request.toApiJson(), {\n ...this.apiOptions(),\n observe: 'response'\n });\n }\n }\n TaskAuxiliaryFieldSchemaApiService.ɵfac = function TaskAuxiliaryFieldSchemaApiService_Factory(t) {\n return new (t || TaskAuxiliaryFieldSchemaApiService)(i0.ɵɵinject(i1.HttpClient), i0.ɵɵinject(HostService));\n };\n TaskAuxiliaryFieldSchemaApiService.ɵprov = /* @__PURE__ */i0.ɵɵdefineInjectable({\n token: TaskAuxiliaryFieldSchemaApiService,\n factory: TaskAuxiliaryFieldSchemaApiService.ɵfac,\n providedIn: 'root'\n });\n return TaskAuxiliaryFieldSchemaApiService;\n})();\n(() => {\n (typeof ngDevMode === \"undefined\" || ngDevMode) && void 0;\n})();\n\n// *********************************\n// Code generated by sdkgen\n// DO NOT EDIT!.\n//\n// API Service.\n// *********************************\nlet TaskManagerApiService = /*#__PURE__*/(() => {\n class TaskManagerApiService {\n constructor(http, hostService) {\n this.http = http;\n this.hostService = hostService;\n this._host = this.hostService.hostWithScheme;\n }\n apiOptions() {\n return {\n headers: new HttpHeaders({\n 'Content-Type': 'application/json'\n }),\n withCredentials: true\n };\n }\n createProjectFromTemplate(r) {\n const request = r.toApiJson ? r : new CreateProjectFromTemplateRequest(r);\n return this.http.post(this._host + \"/taskmanager.v1.TaskManager/CreateProjectFromTemplate\", request.toApiJson(), this.apiOptions()).pipe(map(resp => CommandResponse.fromProto(resp)));\n }\n createProjectFromTemplateSynchronous(r) {\n const request = r.toApiJson ? r : new CreateProjectFromTemplateRequest(r);\n return this.http.post(this._host + \"/taskmanager.v1.TaskManager/CreateProjectFromTemplateSynchronous\", request.toApiJson(), this.apiOptions()).pipe(map(resp => CreateProjectFromTemplateSynchronousResponse.fromProto(resp)));\n }\n createTemplateFromProject(r) {\n const request = r.toApiJson ? r : new TaskIdentity(r);\n return this.http.post(this._host + \"/taskmanager.v1.TaskManager/CreateTemplateFromProject\", request.toApiJson(), this.apiOptions()).pipe(map(resp => CreateTemplateFromProjectResponse.fromProto(resp)));\n }\n createMultiProjectFromTemplate(r) {\n const request = r.toApiJson ? r : new CreateMultiProjectFromTemplateRequest(r);\n return this.http.post(this._host + \"/taskmanager.v1.TaskManager/CreateMultiProjectFromTemplate\", request.toApiJson(), this.apiOptions()).pipe(map(resp => MultiCommandResponses.fromProto(resp)));\n }\n sendNotification(r) {\n const request = r.toApiJson ? r : new SendNotificationRequest(r);\n return this.http.post(this._host + \"/taskmanager.v1.TaskManager/SendNotification\", request.toApiJson(), this.apiOptions()).pipe(map(resp => SendNotificationResponse.fromProto(resp)));\n }\n createActivity(r) {\n const request = r.toApiJson ? r : new CreateActivityRequest(r);\n return this.http.post(this._host + \"/taskmanager.v1.TaskManager/CreateActivity\", request.toApiJson(), this.apiOptions()).pipe(map(resp => CreateActivityResponse.fromProto(resp)));\n }\n getActivity(r) {\n const request = r.toApiJson ? r : new GetActivityRequest(r);\n return this.http.post(this._host + \"/taskmanager.v1.TaskManager/GetActivity\", request.toApiJson(), this.apiOptions()).pipe(map(resp => GetActivityResponse.fromProto(resp)));\n }\n listActivities(r) {\n const request = r.toApiJson ? r : new ListActivitiesRequest(r);\n return this.http.post(this._host + \"/taskmanager.v1.TaskManager/ListActivities\", request.toApiJson(), this.apiOptions()).pipe(map(resp => ListActivitiesResponse.fromProto(resp)));\n }\n sendAccountChangedEvent(r) {\n const request = r.toApiJson ? r : new AccountChangedRequest(r);\n return this.http.post(this._host + \"/taskmanager.v1.TaskManager/SendAccountChangedEvent\", request.toApiJson(), {\n ...this.apiOptions(),\n observe: 'response'\n });\n }\n setMeetingTaskInfo(r) {\n const request = r.toApiJson ? r : new SetMeetingTaskInfoRequest(r);\n return this.http.post(this._host + \"/taskmanager.v1.TaskManager/SetMeetingTaskInfo\", request.toApiJson(), this.apiOptions()).pipe(map(resp => CommandResponse.fromProto(resp)));\n }\n notifyReviewComment(r) {\n const request = r.toApiJson ? r : new NotifyReviewCommentRequest(r);\n return this.http.post(this._host + \"/taskmanager.v1.TaskManager/NotifyReviewComment\", request.toApiJson(), {\n ...this.apiOptions(),\n observe: 'response'\n });\n }\n getMeetingHost(r) {\n const request = r.toApiJson ? r : new GetMeetingHostRequest(r);\n return this.http.post(this._host + \"/taskmanager.v1.TaskManager/GetMeetingHost\", request.toApiJson(), this.apiOptions()).pipe(map(resp => GetMeetingHostResponse.fromProto(resp)));\n }\n askQuestion(r) {\n const request = r.toApiJson ? r : new AskQuestionRequest(r);\n return this.http.post(this._host + \"/taskmanager.v1.TaskManager/AskQuestion\", request.toApiJson(), {\n ...this.apiOptions(),\n observe: 'response'\n });\n }\n sendFeedback(r) {\n const request = r.toApiJson ? r : new SendFeedbackRequest(r);\n return this.http.post(this._host + \"/taskmanager.v1.TaskManager/SendFeedback\", request.toApiJson(), this.apiOptions()).pipe(map(resp => CommandResponse.fromProto(resp)));\n }\n addConversation(r) {\n const request = r.toApiJson ? r : new AddConversationWithNotificationRequest(r);\n return this.http.post(this._host + \"/taskmanager.v1.TaskManager/AddConversation\", request.toApiJson(), this.apiOptions()).pipe(map(resp => CommandResponse.fromProto(resp)));\n }\n getTaskHistory(r) {\n const request = r.toApiJson ? r : new GetTaskHistoryRequest(r);\n return this.http.post(this._host + \"/taskmanager.v1.TaskManager/GetTaskHistory\", request.toApiJson(), this.apiOptions()).pipe(map(resp => GetTaskHistoryResponse.fromProto(resp)));\n }\n getFulfilledPartners(r) {\n const request = r.toApiJson ? r : new GetFulfilledPartnersRequest(r);\n return this.http.post(this._host + \"/taskmanager.v1.TaskManager/GetFulfilledPartners\", request.toApiJson(), this.apiOptions()).pipe(map(resp => GetFulfilledPartnersResponse.fromProto(resp)));\n }\n generate(r) {\n const request = r.toApiJson ? r : new GenerateTaskRequest(r);\n return this.http.post(this._host + \"/taskmanager.v1.TaskManager/Generate\", request.toApiJson(), this.apiOptions()).pipe(map(resp => CommandResponse.fromProto(resp)));\n }\n deleteTask(r) {\n const request = r.toApiJson ? r : new DeleteTaskRequest(r);\n return this.http.post(this._host + \"/taskmanager.v1.TaskManager/DeleteTask\", request.toApiJson(), this.apiOptions()).pipe(map(resp => CommandResponse.fromProto(resp)));\n }\n deleteTaskMulti(r) {\n const request = r.toApiJson ? r : new DeleteMultiTaskRequest(r);\n return this.http.post(this._host + \"/taskmanager.v1.TaskManager/DeleteTaskMulti\", request.toApiJson(), this.apiOptions()).pipe(map(resp => MultiCommandResponses.fromProto(resp)));\n }\n setStatus(r) {\n const request = r.toApiJson ? r : new SetStatusRequest(r);\n return this.http.post(this._host + \"/taskmanager.v1.TaskManager/SetStatus\", request.toApiJson(), this.apiOptions()).pipe(map(resp => CommandResponse.fromProto(resp)));\n }\n setMultiStatus(r) {\n const request = r.toApiJson ? r : new SetMultiStatusRequest(r);\n return this.http.post(this._host + \"/taskmanager.v1.TaskManager/SetMultiStatus\", request.toApiJson(), this.apiOptions()).pipe(map(resp => MultiCommandResponses.fromProto(resp)));\n }\n setStatusMulti(r) {\n const request = r.toApiJson ? r : new SetMultiStatusRequest(r);\n return this.http.post(this._host + \"/taskmanager.v1.TaskManager/SetStatusMulti\", request.toApiJson(), this.apiOptions()).pipe(map(resp => MultiCommandResponses.fromProto(resp)));\n }\n setNotes(r) {\n const request = r.toApiJson ? r : new SetNotesRequest(r);\n return this.http.post(this._host + \"/taskmanager.v1.TaskManager/SetNotes\", request.toApiJson(), this.apiOptions()).pipe(map(resp => CommandResponse.fromProto(resp)));\n }\n setNotesMulti(r) {\n const request = r.toApiJson ? r : new SetMultiNotesRequest(r);\n return this.http.post(this._host + \"/taskmanager.v1.TaskManager/SetNotesMulti\", request.toApiJson(), this.apiOptions()).pipe(map(resp => MultiCommandResponses.fromProto(resp)));\n }\n setTitle(r) {\n const request = r.toApiJson ? r : new SetTitleRequest(r);\n return this.http.post(this._host + \"/taskmanager.v1.TaskManager/SetTitle\", request.toApiJson(), this.apiOptions()).pipe(map(resp => CommandResponse.fromProto(resp)));\n }\n setDescription(r) {\n const request = r.toApiJson ? r : new SetDescriptionRequest(r);\n return this.http.post(this._host + \"/taskmanager.v1.TaskManager/SetDescription\", request.toApiJson(), this.apiOptions()).pipe(map(resp => CommandResponse.fromProto(resp)));\n }\n setData(r) {\n const request = r.toApiJson ? r : new SetKeyValuesRequest(r);\n return this.http.post(this._host + \"/taskmanager.v1.TaskManager/SetData\", request.toApiJson(), this.apiOptions()).pipe(map(resp => CommandResponse.fromProto(resp)));\n }\n setMetadata(r) {\n const request = r.toApiJson ? r : new SetKeyValuesRequest(r);\n return this.http.post(this._host + \"/taskmanager.v1.TaskManager/SetMetadata\", request.toApiJson(), this.apiOptions()).pipe(map(resp => CommandResponse.fromProto(resp)));\n }\n setDueDate(r) {\n const request = r.toApiJson ? r : new SetDueDateRequest(r);\n return this.http.post(this._host + \"/taskmanager.v1.TaskManager/SetDueDate\", request.toApiJson(), this.apiOptions()).pipe(map(resp => CommandResponse.fromProto(resp)));\n }\n setDueDateMulti(r) {\n const request = r.toApiJson ? r : new SetMultiDueDateRequest(r);\n return this.http.post(this._host + \"/taskmanager.v1.TaskManager/SetDueDateMulti\", request.toApiJson(), this.apiOptions()).pipe(map(resp => MultiCommandResponses.fromProto(resp)));\n }\n removeAssignee(r) {\n const request = r.toApiJson ? r : new RemoveAssigneeRequest(r);\n return this.http.post(this._host + \"/taskmanager.v1.TaskManager/RemoveAssignee\", request.toApiJson(), this.apiOptions()).pipe(map(resp => CommandResponse.fromProto(resp)));\n }\n removeAssigneeMulti(r) {\n const request = r.toApiJson ? r : new RemoveMultiAssigneeRequest(r);\n return this.http.post(this._host + \"/taskmanager.v1.TaskManager/RemoveAssigneeMulti\", request.toApiJson(), this.apiOptions()).pipe(map(resp => MultiCommandResponses.fromProto(resp)));\n }\n addAssignee(r) {\n const request = r.toApiJson ? r : new AddAssigneeRequest(r);\n return this.http.post(this._host + \"/taskmanager.v1.TaskManager/AddAssignee\", request.toApiJson(), this.apiOptions()).pipe(map(resp => CommandResponse.fromProto(resp)));\n }\n addAssigneeMulti(r) {\n const request = r.toApiJson ? r : new AddMultiAssigneeRequest(r);\n return this.http.post(this._host + \"/taskmanager.v1.TaskManager/AddAssigneeMulti\", request.toApiJson(), this.apiOptions()).pipe(map(resp => MultiCommandResponses.fromProto(resp)));\n }\n getTask(r) {\n const request = r.toApiJson ? r : new GetTaskRequest(r);\n return this.http.post(this._host + \"/taskmanager.v1.TaskManager/GetTask\", request.toApiJson(), this.apiOptions()).pipe(map(resp => GetTaskResponse.fromProto(resp)));\n }\n getTaskMulti(r) {\n const request = r.toApiJson ? r : new GetTasksRequest(r);\n return this.http.post(this._host + \"/taskmanager.v1.TaskManager/GetTaskMulti\", request.toApiJson(), this.apiOptions()).pipe(map(resp => GetTasksResponse.fromProto(resp)));\n }\n addSubtask(r) {\n const request = r.toApiJson ? r : new AddSubtaskRequest(r);\n return this.http.post(this._host + \"/taskmanager.v1.TaskManager/AddSubtask\", request.toApiJson(), this.apiOptions()).pipe(map(resp => CommandResponse.fromProto(resp)));\n }\n addSubtaskMulti(r) {\n const request = r.toApiJson ? r : new AddMultipleSubtasksRequest(r);\n return this.http.post(this._host + \"/taskmanager.v1.TaskManager/AddSubtaskMulti\", request.toApiJson(), this.apiOptions()).pipe(map(resp => CommandResponse.fromProto(resp)));\n }\n restoreTask(r) {\n const request = r.toApiJson ? r : new RestoreTaskRequest(r);\n return this.http.post(this._host + \"/taskmanager.v1.TaskManager/RestoreTask\", request.toApiJson(), this.apiOptions()).pipe(map(resp => CommandResponse.fromProto(resp)));\n }\n restoreTaskMulti(r) {\n const request = r.toApiJson ? r : new RestoreMultiTaskRequest(r);\n return this.http.post(this._host + \"/taskmanager.v1.TaskManager/RestoreTaskMulti\", request.toApiJson(), this.apiOptions()).pipe(map(resp => MultiCommandResponses.fromProto(resp)));\n }\n restoreParentAndChildrenMulti(r) {\n const request = r.toApiJson ? r : new RestoreParentAndChildrenMultiRequest(r);\n return this.http.post(this._host + \"/taskmanager.v1.TaskManager/RestoreParentAndChildrenMulti\", request.toApiJson(), {\n ...this.apiOptions(),\n observe: 'response'\n });\n }\n addTags(r) {\n const request = r.toApiJson ? r : new AddTagsRequest(r);\n return this.http.post(this._host + \"/taskmanager.v1.TaskManager/AddTags\", request.toApiJson(), this.apiOptions()).pipe(map(resp => CommandResponse.fromProto(resp)));\n }\n removeTags(r) {\n const request = r.toApiJson ? r : new RemoveTagsRequest(r);\n return this.http.post(this._host + \"/taskmanager.v1.TaskManager/RemoveTags\", request.toApiJson(), this.apiOptions()).pipe(map(resp => CommandResponse.fromProto(resp)));\n }\n generateFileUploadUrl(r) {\n const request = r.toApiJson ? r : new GenerateFileUploadUrlRequest(r);\n return this.http.post(this._host + \"/taskmanager.v1.TaskManager/GenerateFileUploadUrl\", request.toApiJson(), this.apiOptions()).pipe(map(resp => GenerateFileUploadUrlResponse.fromProto(resp)));\n }\n addAttachment(r) {\n const request = r.toApiJson ? r : new AddAttachmentRequest(r);\n return this.http.post(this._host + \"/taskmanager.v1.TaskManager/AddAttachment\", request.toApiJson(), this.apiOptions()).pipe(map(resp => CommandResponse.fromProto(resp)));\n }\n removeAttachment(r) {\n const request = r.toApiJson ? r : new RemoveAttachmentRequest(r);\n return this.http.post(this._host + \"/taskmanager.v1.TaskManager/RemoveAttachment\", request.toApiJson(), this.apiOptions()).pipe(map(resp => CommandResponse.fromProto(resp)));\n }\n getAttachmentUrl(r) {\n const request = r.toApiJson ? r : new GetAttachmentUrlRequest(r);\n return this.http.post(this._host + \"/taskmanager.v1.TaskManager/GetAttachmentUrl\", request.toApiJson(), this.apiOptions()).pipe(map(resp => GetAttachmentUrlResponse.fromProto(resp)));\n }\n reorderSubtask(r) {\n const request = r.toApiJson ? r : new ReorderSubtaskRequest(r);\n return this.http.post(this._host + \"/taskmanager.v1.TaskManager/ReorderSubtask\", request.toApiJson(), this.apiOptions()).pipe(map(resp => CommandResponse.fromProto(resp)));\n }\n addHistory(r) {\n const request = r.toApiJson ? r : new AddHistoryRequest(r);\n return this.http.post(this._host + \"/taskmanager.v1.TaskManager/AddHistory\", request.toApiJson(), this.apiOptions()).pipe(map(resp => CommandResponse.fromProto(resp)));\n }\n search(r) {\n const request = r.toApiJson ? r : new SearchTaskRequest(r);\n return this.http.post(this._host + \"/taskmanager.v1.TaskManager/Search\", request.toApiJson(), this.apiOptions()).pipe(map(resp => SearchTaskResponse.fromProto(resp)));\n }\n encryptNotes(r) {\n const request = r.toApiJson ? r : new EncryptNotesRequest(r);\n return this.http.post(this._host + \"/taskmanager.v1.TaskManager/EncryptNotes\", request.toApiJson(), this.apiOptions()).pipe(map(resp => EncryptNotesResponse.fromProto(resp)));\n }\n decryptNotes(r) {\n const request = r.toApiJson ? r : new DecryptNotesRequest(r);\n return this.http.post(this._host + \"/taskmanager.v1.TaskManager/DecryptNotes\", request.toApiJson(), this.apiOptions()).pipe(map(resp => DecryptNotesResponse.fromProto(resp)));\n }\n sendEmail(r) {\n const request = r.toApiJson ? r : new SendEmailRequest(r);\n return this.http.post(this._host + \"/taskmanager.v1.TaskManager/SendEmail\", request.toApiJson(), {\n ...this.apiOptions(),\n observe: 'response'\n });\n }\n getProductEntryUrl(r) {\n const request = r.toApiJson ? r : new GetProductEntryUrlRequest(r);\n return this.http.post(this._host + \"/taskmanager.v1.TaskManager/GetProductEntryUrl\", request.toApiJson(), this.apiOptions()).pipe(map(resp => GetProductEntryUrlResponse.fromProto(resp)));\n }\n getSalesPersonBySubjectId(r) {\n const request = r.toApiJson ? r : new GetSalesPersonBySubjectIDRequest(r);\n return this.http.post(this._host + \"/taskmanager.v1.TaskManager/GetSalesPersonBySubjectID\", request.toApiJson(), this.apiOptions()).pipe(map(resp => GetSalesPersonBySubjectIDResponse.fromProto(resp)));\n }\n fuzzyTaskSearch(r) {\n const request = r.toApiJson ? r : new FuzzyTaskSearchRequest(r);\n return this.http.post(this._host + \"/taskmanager.v1.TaskManager/FuzzyTaskSearch\", request.toApiJson(), this.apiOptions()).pipe(map(resp => FuzzyTaskSearchResponse.fromProto(resp)));\n }\n getHydratedTask(r) {\n const request = r.toApiJson ? r : new GetHydratedTaskRequest(r);\n return this.http.post(this._host + \"/taskmanager.v1.TaskManager/GetHydratedTask\", request.toApiJson(), this.apiOptions()).pipe(map(resp => GetHydratedTaskResponse.fromProto(resp)));\n }\n getMultiHydratedTask(r) {\n const request = r.toApiJson ? r : new GetMultiHydratedTaskRequest(r);\n return this.http.post(this._host + \"/taskmanager.v1.TaskManager/GetMultiHydratedTask\", request.toApiJson(), this.apiOptions()).pipe(map(resp => GetMultiHydratedTaskResponse.fromProto(resp)));\n }\n searchHydratedTasks(r) {\n const request = r.toApiJson ? r : new SearchHydratedTaskRequest(r);\n return this.http.post(this._host + \"/taskmanager.v1.TaskManager/SearchHydratedTasks\", request.toApiJson(), this.apiOptions()).pipe(map(resp => SearchHydratedTaskResponse.fromProto(resp)));\n }\n fuzzySearchHydratedTasks(r) {\n const request = r.toApiJson ? r : new FuzzySearchHydratedTasksRequest(r);\n return this.http.post(this._host + \"/taskmanager.v1.TaskManager/FuzzySearchHydratedTasks\", request.toApiJson(), this.apiOptions()).pipe(map(resp => FuzzySearchHydratedTasksResponse.fromProto(resp)));\n }\n addComment(r) {\n const request = r.toApiJson ? r : new AddCommentRequest(r);\n return this.http.post(this._host + \"/taskmanager.v1.TaskManager/AddComment\", request.toApiJson(), {\n ...this.apiOptions(),\n observe: 'response'\n });\n }\n loadComments(r) {\n const request = r.toApiJson ? r : new LoadCommentsRequest(r);\n return this.http.post(this._host + \"/taskmanager.v1.TaskManager/LoadComments\", request.toApiJson(), this.apiOptions()).pipe(map(resp => LoadCommentsResponse.fromProto(resp)));\n }\n getCommentCount(r) {\n const request = r.toApiJson ? r : new GetCommentCountRequest(r);\n return this.http.post(this._host + \"/taskmanager.v1.TaskManager/GetCommentCount\", request.toApiJson(), this.apiOptions()).pipe(map(resp => GetCommentCountResponse.fromProto(resp)));\n }\n getMultiCommentCount(r) {\n const request = r.toApiJson ? r : new GetMultiCommentCountRequest(r);\n return this.http.post(this._host + \"/taskmanager.v1.TaskManager/GetMultiCommentCount\", request.toApiJson(), this.apiOptions()).pipe(map(resp => GetMultiCommentCountResponse.fromProto(resp)));\n }\n respondToSocialComment(r) {\n const request = r.toApiJson ? r : new RespondToSocialCommentRequest(r);\n return this.http.post(this._host + \"/taskmanager.v1.TaskManager/RespondToSocialComment\", request.toApiJson(), this.apiOptions()).pipe(map(resp => RespondToSocialCommentResponse.fromProto(resp)));\n }\n }\n TaskManagerApiService.ɵfac = function TaskManagerApiService_Factory(t) {\n return new (t || TaskManagerApiService)(i0.ɵɵinject(i1.HttpClient), i0.ɵɵinject(HostService));\n };\n TaskManagerApiService.ɵprov = /* @__PURE__ */i0.ɵɵdefineInjectable({\n token: TaskManagerApiService,\n factory: TaskManagerApiService.ɵfac,\n providedIn: 'root'\n });\n return TaskManagerApiService;\n})();\n(() => {\n (typeof ngDevMode === \"undefined\" || ngDevMode) && void 0;\n})();\n\n// *********************************\n// Code generated by sdkgen\n// DO NOT EDIT!.\n//\n// API Service.\n// *********************************\nlet TaskManagerAuthApiService = /*#__PURE__*/(() => {\n class TaskManagerAuthApiService {\n constructor(http, hostService) {\n this.http = http;\n this.hostService = hostService;\n this._host = this.hostService.hostWithScheme;\n }\n apiOptions() {\n return {\n headers: new HttpHeaders({\n 'Content-Type': 'application/json'\n }),\n withCredentials: true\n };\n }\n canUserAccessVendorPartner(r) {\n const request = r.toApiJson ? r : new CanUserAccessVendorPartnerRequest(r);\n return this.http.post(this._host + \"/taskmanager.v1.TaskManagerAuth/CanUserAccessVendorPartner\", request.toApiJson(), this.apiOptions()).pipe(map(resp => CanUserAccessVendorPartnerResponse.fromProto(resp)));\n }\n }\n TaskManagerAuthApiService.ɵfac = function TaskManagerAuthApiService_Factory(t) {\n return new (t || TaskManagerAuthApiService)(i0.ɵɵinject(i1.HttpClient), i0.ɵɵinject(HostService));\n };\n TaskManagerAuthApiService.ɵprov = /* @__PURE__ */i0.ɵɵdefineInjectable({\n token: TaskManagerAuthApiService,\n factory: TaskManagerAuthApiService.ɵfac,\n providedIn: 'root'\n });\n return TaskManagerAuthApiService;\n})();\n(() => {\n (typeof ngDevMode === \"undefined\" || ngDevMode) && void 0;\n})();\n\n// *********************************\n// Code generated by sdkgen\n// DO NOT EDIT!.\n//\n// API Service.\n// *********************************\nlet TaskStatusesApiService = /*#__PURE__*/(() => {\n class TaskStatusesApiService {\n constructor(http, hostService) {\n this.http = http;\n this.hostService = hostService;\n this._host = this.hostService.hostWithScheme;\n }\n apiOptions() {\n return {\n headers: new HttpHeaders({\n 'Content-Type': 'application/json'\n }),\n withCredentials: true\n };\n }\n getTaskStatus(r) {\n const request = r.toApiJson ? r : new GetTaskStatusRequest(r);\n return this.http.post(this._host + \"/taskmanager.v1.TaskStatuses/GetTaskStatus\", request.toApiJson(), this.apiOptions()).pipe(map(resp => GetTaskStatusResponse.fromProto(resp)));\n }\n listTaskStatuses(r) {\n const request = r.toApiJson ? r : new ListTaskStatusesRequest(r);\n return this.http.post(this._host + \"/taskmanager.v1.TaskStatuses/ListTaskStatuses\", request.toApiJson(), this.apiOptions()).pipe(map(resp => ListTaskStatusesResponse.fromProto(resp)));\n }\n createTaskStatus(r) {\n const request = r.toApiJson ? r : new CreateTaskStatusRequest(r);\n return this.http.post(this._host + \"/taskmanager.v1.TaskStatuses/CreateTaskStatus\", request.toApiJson(), this.apiOptions()).pipe(map(resp => CreateTaskStatusResponse.fromProto(resp)));\n }\n updateTaskStatus(r) {\n const request = r.toApiJson ? r : new UpdateTaskStatusRequest(r);\n return this.http.post(this._host + \"/taskmanager.v1.TaskStatuses/UpdateTaskStatus\", request.toApiJson(), {\n ...this.apiOptions(),\n observe: 'response'\n });\n }\n deleteTaskStatus(r) {\n const request = r.toApiJson ? r : new DeleteTaskStatusRequest(r);\n return this.http.post(this._host + \"/taskmanager.v1.TaskStatuses/DeleteTaskStatus\", request.toApiJson(), {\n ...this.apiOptions(),\n observe: 'response'\n });\n }\n }\n TaskStatusesApiService.ɵfac = function TaskStatusesApiService_Factory(t) {\n return new (t || TaskStatusesApiService)(i0.ɵɵinject(i1.HttpClient), i0.ɵɵinject(HostService));\n };\n TaskStatusesApiService.ɵprov = /* @__PURE__ */i0.ɵɵdefineInjectable({\n token: TaskStatusesApiService,\n factory: TaskStatusesApiService.ɵfac,\n providedIn: 'root'\n });\n return TaskStatusesApiService;\n})();\n(() => {\n (typeof ngDevMode === \"undefined\" || ngDevMode) && void 0;\n})();\n\n// *********************************\n// Code generated by sdkgen\n// DO NOT EDIT!.\n//\n// API Service.\n// *********************************\nlet TemplatesApiService = /*#__PURE__*/(() => {\n class TemplatesApiService {\n constructor(http, hostService) {\n this.http = http;\n this.hostService = hostService;\n this._host = this.hostService.hostWithScheme;\n }\n apiOptions() {\n return {\n headers: new HttpHeaders({\n 'Content-Type': 'application/json'\n }),\n withCredentials: true\n };\n }\n getTemplate(r) {\n const request = r.toApiJson ? r : new GetTemplateRequest(r);\n return this.http.post(this._host + \"/taskmanager.v1.Templates/GetTemplate\", request.toApiJson(), this.apiOptions()).pipe(map(resp => GetTemplateResponse.fromProto(resp)));\n }\n listTemplates(r) {\n const request = r.toApiJson ? r : new ListTemplatesRequest(r);\n return this.http.post(this._host + \"/taskmanager.v1.Templates/ListTemplates\", request.toApiJson(), this.apiOptions()).pipe(map(resp => ListTemplatesResponse.fromProto(resp)));\n }\n createTemplate(r) {\n const request = r.toApiJson ? r : new CreateTemplateRequest(r);\n return this.http.post(this._host + \"/taskmanager.v1.Templates/CreateTemplate\", request.toApiJson(), this.apiOptions()).pipe(map(resp => CommandResponse.fromProto(resp)));\n }\n updateTemplate(r) {\n const request = r.toApiJson ? r : new UpdateTemplateRequest(r);\n return this.http.post(this._host + \"/taskmanager.v1.Templates/UpdateTemplate\", request.toApiJson(), this.apiOptions()).pipe(map(resp => CommandResponse.fromProto(resp)));\n }\n deleteTemplate(r) {\n const request = r.toApiJson ? r : new DeleteTemplateRequest(r);\n return this.http.post(this._host + \"/taskmanager.v1.Templates/DeleteTemplate\", request.toApiJson(), this.apiOptions()).pipe(map(resp => CommandResponse.fromProto(resp)));\n }\n }\n TemplatesApiService.ɵfac = function TemplatesApiService_Factory(t) {\n return new (t || TemplatesApiService)(i0.ɵɵinject(i1.HttpClient), i0.ɵɵinject(HostService));\n };\n TemplatesApiService.ɵprov = /* @__PURE__ */i0.ɵɵdefineInjectable({\n token: TemplatesApiService,\n factory: TemplatesApiService.ɵfac,\n providedIn: 'root'\n });\n return TemplatesApiService;\n})();\n(() => {\n (typeof ngDevMode === \"undefined\" || ngDevMode) && void 0;\n})();\n\n// *********************************\n// Code generated by sdkgen\n// DO NOT EDIT!.\n//\n// API Service.\n// *********************************\nlet VendorApiService = /*#__PURE__*/(() => {\n class VendorApiService {\n constructor(http, hostService) {\n this.http = http;\n this.hostService = hostService;\n this._host = this.hostService.hostWithScheme;\n }\n apiOptions() {\n return {\n headers: new HttpHeaders({\n 'Content-Type': 'application/json'\n }),\n withCredentials: true\n };\n }\n listActivities(r) {\n const request = r.toApiJson ? r : new ListActivitiesRequest(r);\n return this.http.post(this._host + \"/taskmanager.v1.Vendor/ListActivities\", request.toApiJson(), this.apiOptions()).pipe(map(resp => ListActivitiesResponse.fromProto(resp)));\n }\n listAccounts(r) {\n const request = r.toApiJson ? r : new ListAccountsRequest(r);\n return this.http.post(this._host + \"/taskmanager.v1.Vendor/ListAccounts\", request.toApiJson(), this.apiOptions()).pipe(map(resp => ListAccountsResponse.fromProto(resp)));\n }\n getOwnedAppIDsByPartnerId(r) {\n const request = r.toApiJson ? r : new GetOwnedAppIDsByPartnerIDRequest(r);\n return this.http.post(this._host + \"/taskmanager.v1.Vendor/GetOwnedAppIDsByPartnerID\", request.toApiJson(), this.apiOptions()).pipe(map(resp => GetOwnedAppIDsByPartnerIDResponse.fromProto(resp)));\n }\n }\n VendorApiService.ɵfac = function VendorApiService_Factory(t) {\n return new (t || VendorApiService)(i0.ɵɵinject(i1.HttpClient), i0.ɵɵinject(HostService));\n };\n VendorApiService.ɵprov = /* @__PURE__ */i0.ɵɵdefineInjectable({\n token: VendorApiService,\n factory: VendorApiService.ɵfac,\n providedIn: 'root'\n });\n return VendorApiService;\n})();\n(() => {\n (typeof ngDevMode === \"undefined\" || ngDevMode) && void 0;\n})();\n\n// *********************************\n// Code generated by sdkgen\n// DO NOT EDIT!.\n//\n// Index.\n// *********************************\nlet TaskManagerSdkService = /*#__PURE__*/(() => {\n class TaskManagerSdkService {\n constructor(taskManagerApiService) {\n this.taskManagerApiService = taskManagerApiService;\n }\n createProjectFromTemplate(partnerId, accountGroupId, templateId, idempotencyKey, fulfillingPartnerId, fulfillmentOrderId) {\n const request = new CreateProjectFromTemplateRequest({\n partnerId: partnerId,\n accountId: accountGroupId,\n templateId: templateId,\n idempotencyKey: idempotencyKey,\n fulfillingPartnerId: fulfillingPartnerId,\n fulfillmentOrderId: fulfillmentOrderId\n });\n return this.taskManagerApiService.createProjectFromTemplate(request).pipe(map(res => res.version));\n }\n createMultiProjectFromTemplate(requests) {\n const multiReq = new CreateMultiProjectFromTemplateRequest({\n createReq: requests\n });\n return this.taskManagerApiService.createMultiProjectFromTemplate(multiReq);\n }\n generate(request) {\n return this.taskManagerApiService.generate(request);\n }\n setStatus(namespace, parentPath, taskId, newStatus, newVersion) {\n const identity = {\n namespace,\n parentPath,\n taskId\n };\n const request = new SetStatusRequest({\n status: newStatus,\n identity: identity,\n version: newVersion\n });\n return this.taskManagerApiService.setStatus(request).pipe(map(res => res.version));\n }\n sendNotification(namespace, parentPath, taskId, notificationId, version) {\n const identity = new TaskIdentity({\n namespace,\n parentPath,\n taskId\n });\n const request = new SendNotificationRequest({\n identity: identity,\n notificationId: notificationId,\n version: version\n });\n return this.taskManagerApiService.sendNotification(request);\n }\n setMultipleStatus(requests) {\n const multiReq = new SetMultiStatusRequest({\n statusRequests: requests\n });\n return this.taskManagerApiService.setMultiStatus(multiReq);\n }\n /**\n * Set notes the notes of a task. This is a clobber operation, the value passed in for notes will be the new value\n * @param namespace: namespace of a task\n * @param parentPath: the parent task ids separated by the task delimiter\n * @param taskId: id of the task\n * @param notes: new note value\n * @param version: current version of the task\n */\n setNotes(namespace, parentPath, taskId, notes, version) {\n const identity = new TaskIdentity({\n namespace,\n parentPath,\n taskId\n });\n const request = new SetNotesRequest({\n identity,\n notes,\n version\n });\n return this.taskManagerApiService.setNotes(request).pipe(map(resp => resp.version));\n }\n createActivity(activityType, partnerId, accountGroupId, content, taskId, receivers) {\n const request = new CreateActivityRequest({\n activity: new Activity({\n activityType: activityType,\n partnerId: partnerId,\n accountGroupId: accountGroupId,\n content: content,\n taskId: taskId,\n dateHappened: new Date(),\n receivers: receivers\n })\n });\n return this.taskManagerApiService.createActivity(request);\n }\n getActivity(partnerId, accountGroupId, dateHappened, activityId) {\n const request = new GetActivityRequest({\n activityId: activityId,\n partnerId: partnerId,\n accountGroupId: accountGroupId,\n dateHappened: dateHappened\n });\n return this.taskManagerApiService.getActivity(request);\n }\n listActivities(partnerId, accountGroupId, cursor, pageSize) {\n const request = new ListActivitiesRequest({\n partnerId: partnerId,\n accountGroupId: accountGroupId,\n pagingOptions: new PagedRequestOptions({\n cursor: cursor,\n pageSize: pageSize\n })\n });\n return this.taskManagerApiService.listActivities(request);\n }\n deleteTask(namespace, parentPath, taskId, version) {\n const identity = new TaskIdentity({\n namespace,\n parentPath,\n taskId\n });\n const request = new DeleteTaskRequest({\n version,\n identity\n });\n return this.taskManagerApiService.deleteTask(request).pipe(map(resp => resp.version));\n }\n sendAccountChangedEvent(partnerId, accountGroupId, fieldChanged, newValue) {\n const request = new AccountChangedRequest({\n partnerId,\n accountGroupId,\n fieldChanged,\n newValue\n });\n return this.taskManagerApiService.sendAccountChangedEvent(request);\n }\n notifyReviewComment(reviewId, reviewCommentMessage) {\n const request = new NotifyReviewCommentRequest({\n reviewId,\n reviewCommentMessage\n });\n return this.taskManagerApiService.notifyReviewComment(request);\n }\n setMeetingTaskInfo(request) {\n return this.taskManagerApiService.setMeetingTaskInfo(request).pipe(map(resp => resp.version));\n }\n getMeetingHost(hostId) {\n const request = new GetMeetingHostRequest({\n taskManagerHostId: hostId\n });\n return this.taskManagerApiService.getMeetingHost(request);\n }\n askQuestion(r) {\n const request = new AskQuestionRequest(r);\n return this.taskManagerApiService.askQuestion(request);\n }\n sendFeedback(identity, message, sendFrom, sendTo, source, conversationType) {\n const request = new SendFeedbackRequest({\n namespace: identity.namespace,\n parentPath: identity.parentPath,\n taskId: identity.taskId,\n message: message,\n sendFrom: sendFrom,\n sendTo: sendTo,\n source: source,\n conversationType: conversationType\n });\n return this.taskManagerApiService.sendFeedback(request);\n }\n addConversation(conversationType, addConversationReq) {\n const request = new AddConversationWithNotificationRequest({\n conversationType: conversationType,\n addConversationRequest: new AddConversationRequest(addConversationReq)\n });\n return this.taskManagerApiService.addConversation(request).pipe(map(resp => resp.version));\n }\n getTaskHistory(identity) {\n const request = new GetTaskHistoryRequest({\n taskIdentity: identity\n });\n return this.taskManagerApiService.getTaskHistory(request);\n }\n deleteTaskMulti(r) {\n return this.taskManagerApiService.deleteTaskMulti(r);\n }\n setStatusMulti(r) {\n return this.taskManagerApiService.setStatusMulti(r);\n }\n setNotesMulti(r) {\n return this.taskManagerApiService.setNotesMulti(r);\n }\n setTitle(r) {\n return this.taskManagerApiService.setTitle(r).pipe(map(response => response.version));\n }\n setDescription(r) {\n return this.taskManagerApiService.setDescription(r).pipe(map(response => response.version));\n }\n setData(r) {\n return this.taskManagerApiService.setData(r).pipe(map(response => response.version));\n }\n setMetadata(r) {\n return this.taskManagerApiService.setMetadata(r).pipe(map(response => response.version));\n }\n setDueDate(r) {\n return this.taskManagerApiService.setDueDate(r).pipe(map(response => response.version));\n }\n setDueDateMulti(r) {\n return this.taskManagerApiService.setDueDateMulti(r);\n }\n removeAssignee(r) {\n return this.taskManagerApiService.removeAssignee(r).pipe(map(response => response.version));\n }\n removeAssigneeMulti(r) {\n return this.taskManagerApiService.removeAssigneeMulti(r);\n }\n addAssignee(r) {\n return this.taskManagerApiService.addAssignee(r).pipe(map(response => response.version));\n }\n addAssigneeMulti(r) {\n return this.taskManagerApiService.addAssigneeMulti(r);\n }\n getTask(r) {\n return this.taskManagerApiService.getTask(r).pipe(map(response => response.task));\n }\n getTaskMulti(r) {\n return this.taskManagerApiService.getTaskMulti(r).pipe(map(response => response.tasks));\n }\n addSubtask(r) {\n return this.taskManagerApiService.addSubtask(r).pipe(map(response => response.version));\n }\n addSubtaskMulti(r) {\n return this.taskManagerApiService.addSubtaskMulti(r).pipe(map(response => response.version));\n }\n restoreTask(r) {\n return this.taskManagerApiService.restoreTask(r).pipe(map(response => response.version));\n }\n restoreTaskMulti(r) {\n return this.taskManagerApiService.restoreTaskMulti(r);\n }\n addTags(r) {\n return this.taskManagerApiService.addTags(r).pipe(map(response => response.version));\n }\n removeTags(r) {\n return this.taskManagerApiService.removeTags(r).pipe(map(response => response.version));\n }\n /**\n * Generate a file upload url for a task. This is where the file you are trying to upload ultimately ends up.\n * @param taskIdentity - identity of the task you are uploading a file to\n * @param fileName - name of the file you are uploading\n * @param contentType - mime type of the file\n */\n generateFileUploadUrl(taskIdentity, fileName, contentType) {\n const r = new GenerateFileUploadUrlRequest({\n identity: taskIdentity,\n filename: fileName,\n contentType: contentType\n });\n return this.taskManagerApiService.generateFileUploadUrl(r).pipe(map(response => {\n return [response.uploadUrl, response.shareableUrl];\n }));\n }\n addAttachment(r) {\n return this.taskManagerApiService.addAttachment(r).pipe(map(response => response.version));\n }\n getAttachmentUrl(taskIdentity, attachmentId) {\n return this.taskManagerApiService.getAttachmentUrl(new GetAttachmentUrlRequest({\n identity: taskIdentity,\n attachmentId: attachmentId\n }));\n }\n removeAttachment(r) {\n return this.taskManagerApiService.removeAttachment(r).pipe(map(response => response.version));\n }\n reorderSubtask(r) {\n return this.taskManagerApiService.reorderSubtask(r).pipe(map(response => response.version));\n }\n addHistory(r) {\n return this.taskManagerApiService.addHistory(r).pipe(map(response => response.version));\n }\n search(r) {\n return this.taskManagerApiService.search(r);\n }\n getFulfilledPartners(fulfillingPartnerId) {\n return this.taskManagerApiService.getFulfilledPartners(new GetFulfilledPartnersRequest({\n fulfillingPartnerId: fulfillingPartnerId\n })).pipe(map(response => response.partnerBrands));\n }\n sendEmail(r) {\n return this.taskManagerApiService.sendEmail(r);\n }\n encryptNotes(r) {\n return this.taskManagerApiService.encryptNotes(r).pipe(map(response => response.encryptedNote));\n }\n decryptNotes(r) {\n return this.taskManagerApiService.decryptNotes(r).pipe(map(response => response.decryptedNote));\n }\n createTemplateFromProject(r) {\n return this.taskManagerApiService.createTemplateFromProject(r);\n }\n getProductEntryUrl(r) {\n return this.taskManagerApiService.getProductEntryUrl(new GetProductEntryUrlRequest(r));\n }\n getSalespersonBySubjectId(r) {\n return this.taskManagerApiService.getSalesPersonBySubjectId(new GetSalesPersonBySubjectIDRequest(r));\n }\n fuzzyTaskSearch(r) {\n return this.taskManagerApiService.fuzzyTaskSearch(new FuzzyTaskSearchRequest(r));\n }\n getHydratedTask(r) {\n return this.taskManagerApiService.getHydratedTask(r);\n }\n getMultiHydratedTask(r) {\n return this.taskManagerApiService.getMultiHydratedTask(r);\n }\n searchHydratedTasks(r) {\n return this.taskManagerApiService.searchHydratedTasks(r);\n }\n fuzzySearchHydratedTasks(r) {\n return this.taskManagerApiService.fuzzySearchHydratedTasks(r);\n }\n // AddComment uses the new conversation service to support platform wide communication.\n // This should be used in place of AddConversation where possible\n addComment(r) {\n return this.taskManagerApiService.addComment(new AddCommentRequest(r));\n }\n loadComments(r) {\n return this.taskManagerApiService.loadComments(new LoadCommentsRequest(r));\n }\n getCommentCount(r) {\n return this.taskManagerApiService.getCommentCount(new GetCommentCountRequest(r));\n }\n getMultiCommentCount(r) {\n return this.taskManagerApiService.getMultiCommentCount(new GetMultiCommentCountRequest(r));\n }\n restoreParentAndChildrenMulti(r) {\n return this.taskManagerApiService.restoreParentAndChildrenMulti(new RestoreParentAndChildrenMultiRequest(r));\n }\n respondToSocialComment(r) {\n return this.taskManagerApiService.respondToSocialComment(r).pipe(map(response => response.socialCommentId));\n }\n }\n TaskManagerSdkService.ɵfac = function TaskManagerSdkService_Factory(t) {\n return new (t || TaskManagerSdkService)(i0.ɵɵinject(TaskManagerApiService));\n };\n TaskManagerSdkService.ɵprov = /* @__PURE__ */i0.ɵɵdefineInjectable({\n token: TaskManagerSdkService,\n factory: TaskManagerSdkService.ɵfac,\n providedIn: 'root'\n });\n return TaskManagerSdkService;\n})();\n(() => {\n (typeof ngDevMode === \"undefined\" || ngDevMode) && void 0;\n})();\nvar Persona = /*#__PURE__*/function (Persona) {\n Persona[\"salesPerson\"] = \"sales_person\";\n Persona[\"digitalAgent\"] = \"digital_agent\";\n return Persona;\n}(Persona || {});\nvar GoType = /*#__PURE__*/function (GoType) {\n GoType[\"STRING\"] = \"string\";\n GoType[\"INT\"] = \"int64\";\n GoType[\"FLOAT\"] = \"float64\";\n GoType[\"BOOL\"] = \"bool\";\n GoType[\"TIME\"] = \"time\";\n return GoType;\n}(GoType || {});\n/**\n * Enum of the standard Task statuses. No longer enforced as the only allowable statuses\n */\nvar Status = /*#__PURE__*/function (Status) {\n Status[\"Open\"] = \"Open\";\n Status[\"InProgress\"] = \"In Progress\";\n Status[\"WaitingOnCustomer\"] = \"Waiting on Customer\";\n Status[\"Completed\"] = \"Completed\";\n return Status;\n}(Status || {});\nvar KeyValueTypes = /*#__PURE__*/function (KeyValueTypes) {\n KeyValueTypes[\"INT64\"] = \"int64\";\n KeyValueTypes[\"DOUBLE\"] = \"double\";\n KeyValueTypes[\"BOOL\"] = \"bool\";\n KeyValueTypes[\"STRING\"] = \"string\";\n KeyValueTypes[\"TIME\"] = \"time\";\n return KeyValueTypes;\n}(KeyValueTypes || {});\nlet GroupSdkService = /*#__PURE__*/(() => {\n class GroupSdkService {\n constructor(groupApiService) {\n this.groupApiService = groupApiService;\n }\n createGroup(partnerId, name, pathNodes, membertype, namespace) {\n return this.groupApiService.createGroup({\n partnerId,\n name,\n pathNodes,\n membertype,\n namespace\n });\n }\n addGroupMembers(pathNodes, members) {\n return this.groupApiService.addGroupMembers({\n pathNodes,\n members\n });\n }\n removeGroupMembers(pathNodes, members) {\n return this.groupApiService.removeGroupMembers({\n pathNodes,\n members\n });\n }\n listGroupMembers(partnerId, pathNodes, cursor, pageSize) {\n return this.groupApiService.listGroupMembers({\n partnerId: partnerId,\n pathNodes: pathNodes,\n pagingOptions: {\n cursor,\n pageSize\n }\n });\n }\n listGroup(partnerId, pathNodes, memberType, namespace, cursor, pageSize) {\n return this.groupApiService.listGroup({\n pathNodes: pathNodes,\n partnerId: partnerId,\n pagingOptions: {\n cursor: cursor,\n pageSize: pageSize\n },\n namespace: namespace,\n memberType: memberType\n });\n }\n updateGroupName(pathNodes, name) {\n return this.groupApiService.updateGroupName({\n pathNodes,\n name\n });\n }\n deleteGroup(pathNodes) {\n return this.groupApiService.deleteGroup({\n pathNodes\n });\n }\n listGroupsByMembers(partnerId, members) {\n return this.groupApiService.listGroupsByMembers({\n partnerId: partnerId,\n members: members\n });\n }\n getMulti(partnerId, paths) {\n return this.groupApiService.getMulti({\n partnerId,\n paths\n });\n }\n }\n GroupSdkService.ɵfac = function GroupSdkService_Factory(t) {\n return new (t || GroupSdkService)(i0.ɵɵinject(GroupApiService));\n };\n GroupSdkService.ɵprov = /* @__PURE__ */i0.ɵɵdefineInjectable({\n token: GroupSdkService,\n factory: GroupSdkService.ɵfac,\n providedIn: 'root'\n });\n return GroupSdkService;\n})();\n(() => {\n (typeof ngDevMode === \"undefined\" || ngDevMode) && void 0;\n})();\nlet TaskStatusesSdkService = /*#__PURE__*/(() => {\n class TaskStatusesSdkService {\n constructor(statusApiService) {\n this.statusApiService = statusApiService;\n }\n getTaskStatus(partnerId, statusId) {\n return this.statusApiService.getTaskStatus({\n partnerId: partnerId,\n statusId: statusId\n }).pipe(map(response => response.status));\n }\n listTaskStatuses(partnerId, cursor, pageSize) {\n return this.statusApiService.listTaskStatuses({\n partnerId: partnerId,\n cursor: cursor,\n pageSize: pageSize\n });\n }\n createTaskStatus(partnerId, name, textColour, backgroundColour) {\n const status = {\n partnerId: partnerId,\n name: name,\n textColour: textColour,\n backgroundColour: backgroundColour\n };\n return this.statusApiService.createTaskStatus({\n status: status\n }).pipe(map(response => response.statusId));\n }\n updateTaskStatus(partnerId, statusId, textColour, backgroundColour) {\n return this.statusApiService.updateTaskStatus({\n partnerId: partnerId,\n statusId: statusId,\n backgroundColour: backgroundColour,\n textColour: textColour\n });\n }\n deleteTaskStatus(partnerId, statusId) {\n return this.statusApiService.deleteTaskStatus({\n partnerId: partnerId,\n statusId: statusId\n });\n }\n }\n TaskStatusesSdkService.ɵfac = function TaskStatusesSdkService_Factory(t) {\n return new (t || TaskStatusesSdkService)(i0.ɵɵinject(TaskStatusesApiService));\n };\n TaskStatusesSdkService.ɵprov = /* @__PURE__ */i0.ɵɵdefineInjectable({\n token: TaskStatusesSdkService,\n factory: TaskStatusesSdkService.ɵfac,\n providedIn: 'root'\n });\n return TaskStatusesSdkService;\n})();\n(() => {\n (typeof ngDevMode === \"undefined\" || ngDevMode) && void 0;\n})();\nlet TaskMetricsSdkService = /*#__PURE__*/(() => {\n class TaskMetricsSdkService {\n constructor(metricsApiService) {\n this.metricsApiService = metricsApiService;\n }\n exportProjects(exportType, filters, columns) {\n const request = new ExportProjectsRequest({\n exportType: exportType,\n filters: filters,\n columns: columns\n });\n return this.metricsApiService.exportProjects(request);\n }\n }\n TaskMetricsSdkService.ɵfac = function TaskMetricsSdkService_Factory(t) {\n return new (t || TaskMetricsSdkService)(i0.ɵɵinject(MetricsApiService));\n };\n TaskMetricsSdkService.ɵprov = /* @__PURE__ */i0.ɵɵdefineInjectable({\n token: TaskMetricsSdkService,\n factory: TaskMetricsSdkService.ɵfac,\n providedIn: 'root'\n });\n return TaskMetricsSdkService;\n})();\n(() => {\n (typeof ngDevMode === \"undefined\" || ngDevMode) && void 0;\n})();\nlet AccountsSdkService = /*#__PURE__*/(() => {\n class AccountsSdkService {\n constructor(accountsApiService) {\n this.accountsApiService = accountsApiService;\n }\n getAccountForTask(identity, fieldMask) {\n const defaultFieldMask = {\n paths: []\n };\n const request = new GetTaskAccountsRequest({\n identities: [identity],\n fieldMask: fieldMask ? fieldMask : defaultFieldMask\n });\n return this.accountsApiService.getTaskAccounts(request).pipe(map(response => response.accounts[0]));\n }\n getAccountsForTasks(identities, fieldMask) {\n const defaultFieldMask = {\n paths: []\n };\n const request = new GetTaskAccountsRequest({\n identities: identities,\n fieldMask: fieldMask ? fieldMask : defaultFieldMask\n });\n return this.accountsApiService.getTaskAccounts(request).pipe(map(response => response.accounts));\n }\n getConciergeAccountForTask(identity) {\n return this.accountsApiService.getTaskConciergeAccount(new GetTaskConciergeAccountRequest({\n identity: identity\n })).pipe(map(response => response.conciergeAccount));\n }\n getPurchasingPartnerConciergeAccount(purchasingPartnerId, accountGroupId) {\n return this.accountsApiService.getPurchasingPartnerConciergeAccount(new GetPurchasingPartnerConciergeAccountRequest({\n purchasingPartnerId: purchasingPartnerId,\n accountGroupId: accountGroupId\n })).pipe(map(resp => resp.conciergeAccount));\n }\n getPurchasingPartnerAccount(purchasingPartnerId, accountGroupId, fieldMask) {\n const defaultFieldMask = {\n paths: []\n };\n return this.accountsApiService.getPurchasingPartnerAccount(new GetPurchasingPartnerAccountRequest({\n purchasingPartnerId: purchasingPartnerId,\n accountGroupId: accountGroupId,\n fieldMask: fieldMask ? fieldMask : defaultFieldMask\n })).pipe(map(resp => resp.accountGroup));\n }\n setAccountNote(r) {\n return this.accountsApiService.setAccountNote(r);\n }\n getAccountListingSourcesSettings(request) {\n return this.accountsApiService.getAccountListingSourcesSettings(request).pipe(map(resp => resp.sourceSettings));\n }\n updateAccountListingSource(request) {\n return this.accountsApiService.updateAccountListingSource(request);\n }\n updateAccountMultiListingSource(request) {\n return this.accountsApiService.updateAccountMultiListingSource(request);\n }\n listAccountSocialServices(r) {\n return this.accountsApiService.listAccountSocialServices(r);\n }\n listCommitmentDates(r) {\n return this.accountsApiService.listCommitmentDates(r);\n }\n getSalesOrderFormSubmissionInfo(r) {\n return this.accountsApiService.getSalesOrderFormSubmissionInfo(r);\n }\n }\n AccountsSdkService.ɵfac = function AccountsSdkService_Factory(t) {\n return new (t || AccountsSdkService)(i0.ɵɵinject(AccountsApiService));\n };\n AccountsSdkService.ɵprov = /* @__PURE__ */i0.ɵɵdefineInjectable({\n token: AccountsSdkService,\n factory: AccountsSdkService.ɵfac,\n providedIn: 'root'\n });\n return AccountsSdkService;\n})();\n(() => {\n (typeof ngDevMode === \"undefined\" || ngDevMode) && void 0;\n})();\nlet DigitalAgentSdkService = /*#__PURE__*/(() => {\n class DigitalAgentSdkService {\n constructor(digitalAgentApiService) {\n this.digitalAgentApiService = digitalAgentApiService;\n }\n listAssigneesForPartner(partnerId, onlySameNamespace = false) {\n const r = new ListAssigneesForPartnerRequest({\n partnerId: partnerId,\n onlyIncludeSameNamespace: onlySameNamespace\n });\n return this.digitalAgentApiService.listAssigneesForPartner(r).pipe(take(1), map(resp => {\n return resp.digitalAgents;\n }));\n }\n getDigitalAgentsByUserIds(partnerId, userIds) {\n const req = new GetDigitalAgentsByUserIdsRequest({\n partnerId: partnerId,\n userIds: userIds\n });\n return this.digitalAgentApiService.getDigitalAgentsByUserIds(req).pipe(map(resp => resp.digitalAgents));\n }\n getDigitalAgentsBySubjectIds(partnerId, subjectIds) {\n const req = new GetDigitalAgentsBySubjectIdsRequest({\n partnerId: partnerId,\n subjectIds: subjectIds\n });\n return this.digitalAgentApiService.getDigitalAgentsBySubjectIds(req).pipe(map(resp => resp.digitalAgents));\n }\n sendWelcomeEmailBySubjectId(partnerId, subjectId, usePartnerDefaultDomain = false) {\n const req = new SendWelcomeEmailRequest({\n partnerId: partnerId,\n subjectId: subjectId,\n usePlatformDefaultDomain: usePartnerDefaultDomain\n });\n return this.digitalAgentApiService.sendWelcomeEmail(req).pipe(map(resp => resp.ok));\n }\n sendWelcomeEmailByUserId(partnerId, userId, usePartnerDefaultDomain = false) {\n const req = new SendWelcomeEmailRequest({\n partnerId: partnerId,\n userId: userId,\n usePlatformDefaultDomain: usePartnerDefaultDomain\n });\n return this.digitalAgentApiService.sendWelcomeEmail(req).pipe(map(resp => resp.ok));\n }\n createDigitalAgent(request) {\n return this.digitalAgentApiService.createDigitalAgent(request);\n }\n updateDigitalAgent(request) {\n return this.digitalAgentApiService.updateDigitalAgent(request);\n }\n }\n DigitalAgentSdkService.ɵfac = function DigitalAgentSdkService_Factory(t) {\n return new (t || DigitalAgentSdkService)(i0.ɵɵinject(DigitalAgentsApiService));\n };\n DigitalAgentSdkService.ɵprov = /* @__PURE__ */i0.ɵɵdefineInjectable({\n token: DigitalAgentSdkService,\n factory: DigitalAgentSdkService.ɵfac,\n providedIn: 'root'\n });\n return DigitalAgentSdkService;\n})();\n(() => {\n (typeof ngDevMode === \"undefined\" || ngDevMode) && void 0;\n})();\nlet TemplatesSdkService = /*#__PURE__*/(() => {\n class TemplatesSdkService {\n constructor(templateApiService) {\n this.templateApiService = templateApiService;\n }\n getTemplate(identity) {\n const r = new GetTemplateRequest({\n identity\n });\n return this.templateApiService.getTemplate(r).pipe(map(resp => resp.template));\n }\n listTemplates(namespace, pageSize, cursor) {\n const r = new ListTemplatesRequest({\n namespace,\n pageSize,\n cursor\n });\n return this.templateApiService.listTemplates(r);\n }\n createTemplate(template) {\n const r = new CreateTemplateRequest({\n template\n });\n return this.templateApiService.createTemplate(r).pipe(map(resp => resp.version));\n }\n updateTemplate(identity, version, commands) {\n const r = new UpdateTemplateRequest({\n identity: identity,\n version: version,\n commands: commands\n });\n return this.templateApiService.updateTemplate(r).pipe(map(resp => resp.version));\n }\n deleteTemplate(identity, version) {\n const r = new DeleteTemplateRequest({\n identity,\n version\n });\n return this.templateApiService.deleteTemplate(r).pipe(map(resp => resp.version));\n }\n }\n TemplatesSdkService.ɵfac = function TemplatesSdkService_Factory(t) {\n return new (t || TemplatesSdkService)(i0.ɵɵinject(TemplatesApiService));\n };\n TemplatesSdkService.ɵprov = /* @__PURE__ */i0.ɵɵdefineInjectable({\n token: TemplatesSdkService,\n factory: TemplatesSdkService.ɵfac,\n providedIn: 'root'\n });\n return TemplatesSdkService;\n})();\n(() => {\n (typeof ngDevMode === \"undefined\" || ngDevMode) && void 0;\n})();\nlet CustomTagSdkService = /*#__PURE__*/(() => {\n class CustomTagSdkService {\n constructor(customTagApiService) {\n this.customTagApiService = customTagApiService;\n }\n addCustomTag(identity, customTags, version) {\n return this.customTagApiService.addCustomTag({\n identity: identity,\n customTags: customTags,\n version: version\n }).pipe(map(resp => resp.version));\n }\n removeCustomTag(identity, customTags, version) {\n return this.customTagApiService.removeCustomTag({\n identity: identity,\n customTags: customTags,\n version: version\n }).pipe(map(resp => resp.version));\n }\n getCustomTag(partnerId, tagId) {\n return this.customTagApiService.getCustomTag({\n partnerId,\n tagId\n });\n }\n getMultiCustomTag(partnerId, tagIds) {\n return this.customTagApiService.getMultiCustomTag({\n partnerId,\n tagIds\n });\n }\n listCustomTags(partnerId) {\n return this.customTagApiService.listCustomTags({\n partnerId\n });\n }\n createCustomTag(partnerId, tagName) {\n return this.customTagApiService.createCustomTag({\n partnerId,\n tagName\n });\n }\n updateCustomTag(partnerId, tagId, newTagName) {\n return this.customTagApiService.updateCustomTag({\n partnerId,\n tagId,\n newTagName\n });\n }\n deleteCustomTag(partnerId, tagId) {\n return this.customTagApiService.deleteCustomTag({\n partnerId,\n tagId\n });\n }\n }\n CustomTagSdkService.ɵfac = function CustomTagSdkService_Factory(t) {\n return new (t || CustomTagSdkService)(i0.ɵɵinject(CustomTagsApiService));\n };\n CustomTagSdkService.ɵprov = /* @__PURE__ */i0.ɵɵdefineInjectable({\n token: CustomTagSdkService,\n factory: CustomTagSdkService.ɵfac,\n providedIn: 'root'\n });\n return CustomTagSdkService;\n})();\n(() => {\n (typeof ngDevMode === \"undefined\" || ngDevMode) && void 0;\n})();\nlet VendorSdkService = /*#__PURE__*/(() => {\n class VendorSdkService {\n constructor(vendorApiService) {\n this.vendorApiService = vendorApiService;\n }\n listActivities(partnerId, accountGroupId, cursor, pageSize) {\n const request = new ListActivitiesRequest({\n partnerId: partnerId,\n accountGroupId: accountGroupId,\n pagingOptions: new PagedRequestOptions({\n cursor: cursor,\n pageSize: pageSize\n })\n });\n return this.vendorApiService.listActivities(request);\n }\n listAccountGroups(request) {\n const r = new ListAccountsRequest(request);\n return this.vendorApiService.listAccounts(r);\n }\n getOwnedAppIdsByPartnerId(partnerId) {\n return this.vendorApiService.getOwnedAppIDsByPartnerId(new GetOwnedAppIDsByPartnerIDRequest({\n partnerId: partnerId\n })).pipe(map(resp => resp?.appIds || []));\n }\n }\n VendorSdkService.ɵfac = function VendorSdkService_Factory(t) {\n return new (t || VendorSdkService)(i0.ɵɵinject(VendorApiService));\n };\n VendorSdkService.ɵprov = /* @__PURE__ */i0.ɵɵdefineInjectable({\n token: VendorSdkService,\n factory: VendorSdkService.ɵfac,\n providedIn: 'root'\n });\n return VendorSdkService;\n})();\n(() => {\n (typeof ngDevMode === \"undefined\" || ngDevMode) && void 0;\n})();\nlet BusinessFulfillmentSettingsSdkService = /*#__PURE__*/(() => {\n class BusinessFulfillmentSettingsSdkService {\n constructor(businessFulfillmentSettingsApiService) {\n this.businessFulfillmentSettingsApiService = businessFulfillmentSettingsApiService;\n }\n create(businessId, productIds) {\n const req = new CreateBusinessFulfillmentSettingRequest({\n businessId,\n productIds\n });\n return this.businessFulfillmentSettingsApiService.create(req);\n }\n get(businessId) {\n const req = new GetBusinessFulfillmentSettingRequest({\n businessId\n });\n return this.businessFulfillmentSettingsApiService.get(req).pipe(map(resp => resp?.setting));\n }\n addProducts(businessId, productIds) {\n const req = new AddProductsRequest({\n businessId,\n productIds\n });\n return this.businessFulfillmentSettingsApiService.addProducts(req);\n }\n removeProducts(businessId, productIds) {\n const req = new RemoveProductsRequest({\n businessId,\n productIds\n });\n return this.businessFulfillmentSettingsApiService.removeProducts(req);\n }\n delete(businessId) {\n const req = new DeleteBusinessFulfillmentSettingRequest({\n businessId\n });\n return this.businessFulfillmentSettingsApiService.delete(req);\n }\n }\n BusinessFulfillmentSettingsSdkService.ɵfac = function BusinessFulfillmentSettingsSdkService_Factory(t) {\n return new (t || BusinessFulfillmentSettingsSdkService)(i0.ɵɵinject(BusinessFulfillmentSettingsApiService));\n };\n BusinessFulfillmentSettingsSdkService.ɵprov = /* @__PURE__ */i0.ɵɵdefineInjectable({\n token: BusinessFulfillmentSettingsSdkService,\n factory: BusinessFulfillmentSettingsSdkService.ɵfac,\n providedIn: 'root'\n });\n return BusinessFulfillmentSettingsSdkService;\n})();\n(() => {\n (typeof ngDevMode === \"undefined\" || ngDevMode) && void 0;\n})();\nlet ProductFulfillmentSettingsSdkService = /*#__PURE__*/(() => {\n class ProductFulfillmentSettingsSdkService {\n constructor(productFulfillmentSettingsApiService) {\n this.productFulfillmentSettingsApiService = productFulfillmentSettingsApiService;\n }\n create(productId, taskType, fulfillingPartnerId, ownerPartnerId, templateId) {\n const req = new CreateProductFulfillmentSettingRequest({\n productId,\n taskType,\n fulfillingPartnerId,\n ownerPartnerId,\n templateId\n });\n return this.productFulfillmentSettingsApiService.create(req);\n }\n getMulti(settingIds) {\n const req = new GetMultiProductFulfillmentSettingRequest({\n settingIds\n });\n return this.productFulfillmentSettingsApiService.getMulti(req).pipe(map(resp => resp?.settings || []));\n }\n lookup(lookupReq) {\n return this.productFulfillmentSettingsApiService.lookup(lookupReq);\n }\n setFulfillingPartner(productId, fulfillingPartnerId) {\n const req = new SetFulfillingPartnerRequest({\n productId,\n fulfillingPartnerId\n });\n return this.productFulfillmentSettingsApiService.setFulfillingPartner(req);\n }\n delete(productId, taskType) {\n const req = new DeleteProductFulfillmentSettingRequest({\n productId,\n taskType\n });\n return this.productFulfillmentSettingsApiService.delete(req);\n }\n setTemplate(productId, taskType, templateId) {\n const req = new SetTemplateRequest({\n productId,\n taskType,\n templateId\n });\n return this.productFulfillmentSettingsApiService.setTemplate(req);\n }\n }\n ProductFulfillmentSettingsSdkService.ɵfac = function ProductFulfillmentSettingsSdkService_Factory(t) {\n return new (t || ProductFulfillmentSettingsSdkService)(i0.ɵɵinject(ProductFulfillmentSettingsApiService));\n };\n ProductFulfillmentSettingsSdkService.ɵprov = /* @__PURE__ */i0.ɵɵdefineInjectable({\n token: ProductFulfillmentSettingsSdkService,\n factory: ProductFulfillmentSettingsSdkService.ɵfac,\n providedIn: 'root'\n });\n return ProductFulfillmentSettingsSdkService;\n})();\n(() => {\n (typeof ngDevMode === \"undefined\" || ngDevMode) && void 0;\n})();\n\n/**\n * Generated bundle index. Do not edit.\n */\n\nexport { Access, AccessPermissions, AccountChangedRequest, AccountData, AccountGroup, AccountProductDetailsApiService, AccountSalespersonData, AccountSocialService, AccountsApiService, AccountsSdkService, Activity, ActivityTypes, AddAssigneeRequest, AddAttachmentRequest, AddCommentRequest, AddConversationRequest, AddConversationWithNotificationRequest, AddCustomTagsRequest, AddGroupMembersRequest, AddHistoryRequest, AddMultiAssigneeRequest, AddMultipleSubtasksRequest, AddProductsRequest, AddSocialPostSubtaskRequest, AddSubtaskRequest, AddTagsRequest, ArchiveAuxiliaryDataFieldSchemaRequest, AskQuestionRequest, Attachment, AuxiliaryDataFieldSchema, AuxiliaryDataFieldType, AuxiliaryDataObjectID, BusinessFulfillmentSetting, BusinessFulfillmentSettingsApiService, BusinessFulfillmentSettingsSdkService, CanUserAccessVendorPartnerRequest, CanUserAccessVendorPartnerResponse, ChildNode, CommandResponse, Comment, CommentProjectionFilter, CommentType, ConciergeAccount, ContactDetails, Conversation, ConversationTypes, CountMetricResponse, CreateActivityRequest, CreateActivityResponse, CreateAuxiliaryDataFieldSchemaRequest, CreateBusinessFulfillmentSettingRequest, CreateConciergeAccountRequest, CreateCustomTagRequest, CreateCustomTagResponse, CreateDigitalAgentRequest, CreateDigitalAgentRequestPartnerPermissionsEntry, CreateGroupRequest, CreateGroupResponse, CreateMultiProjectFromTemplateRequest, CreateProductFulfillmentSettingRequest, CreateProjectFromTemplateRequest, CreateProjectFromTemplateSynchronousResponse, CreateRecurringTaskRequest, CreateRecurringTaskResponse, CreateTaskStatusRequest, CreateTaskStatusResponse, CreateTemplateFromProjectResponse, CreateTemplateRequest, CustomTag, CustomTagSdkService, CustomTagsApiService, DateField, DateFilter, DeactivateConciergeAccountRequest, DecryptNotesRequest, DecryptNotesResponse, DeleteBusinessFulfillmentSettingRequest, DeleteCustomTagRequest, DeleteGroupRequest, DeleteMultiTaskRequest, DeleteProductFulfillmentSettingRequest, DeleteRecurringTaskRequest, DeleteTaskRequest, DeleteTaskStatusRequest, DeleteTemplateRequest, DeleteUserRequest, DigitalAgent, DigitalAgentPartnerPermissionsEntry, DigitalAgentSdkService, DigitalAgentsApiService, DropdownOption, EncryptNotesRequest, EncryptNotesResponse, ExportColumns, ExportProjectsRequest, ExportTypes, ExternalIdentifiers, FieldDataUpsertOperation, FieldMask, FieldSchemaIdentifier, Filters, FuzzyRangeField, FuzzyRangeFilter, FuzzySearchHydratedTasksRequest, FuzzySearchHydratedTasksResponse, FuzzySort, FuzzySortDirection, FuzzyTaskSearchRequest, FuzzyTaskSearchResponse, GenerateFileUploadUrlRequest, GenerateFileUploadUrlResponse, GenerateTaskRequest, GetAccountListingSourcesSettingsRequest, GetAccountProductDetailsRequest, GetAccountProductDetailsResponse, GetAccountVendorProductDetailsRequest, GetActivityRequest, GetActivityResponse, GetAttachmentUrlRequest, GetAttachmentUrlResponse, GetAuxiliaryDataFieldSchemaRequest, GetAuxiliaryDataFieldSchemaResponse, GetBusinessFulfillmentSettingRequest, GetBusinessFulfillmentSettingResponse, GetCommentCountRequest, GetCommentCountResponse, GetCustomTagRequest, GetCustomTagResponse, GetDigitalAgentsBySubjectIdsRequest, GetDigitalAgentsBySubjectIdsResponse, GetDigitalAgentsByUserIdsRequest, GetDigitalAgentsByUserIdsResponse, GetFulfilledPartnersRequest, GetFulfilledPartnersResponse, GetHydratedTaskRequest, GetHydratedTaskResponse, GetMeetingHostRequest, GetMeetingHostResponse, GetMetricsFilters, GetMetricsRequest, GetMetricsRequestMetricRequest, GetMetricsResponse, GetMultiAuxiliaryDataFieldSchemaRequest, GetMultiAuxiliaryDataFieldSchemaResponse, GetMultiCommentCountRequest, GetMultiCommentCountResponse, GetMultiCustomTagRequest, GetMultiCustomTagResponse, GetMultiHydratedTaskRequest, GetMultiHydratedTaskResponse, GetMultiProductFulfillmentSettingRequest, GetMultiProductFulfillmentSettingResponse, GetMultiUserInfoExternalRequest, GetMultiUserInfoExternalResponse, GetMultiUserInfoExternalResponseUsersEntry, GetOrderFormForProjectRequest, GetOrderFormForProjectResponse, GetOwnedAppIDsByPartnerIDRequest, GetOwnedAppIDsByPartnerIDResponse, GetProductEntryUrlRequest, GetProductEntryUrlResponse, GetPurchasingPartnerAccountRequest, GetPurchasingPartnerAccountResponse, GetPurchasingPartnerConciergeAccountRequest, GetPurchasingPartnerConciergeAccountResponse, GetRecurringTaskRequest, GetRecurringTaskResponse, GetSalesOrderFormSubmissionInfoRequest, GetSalesOrderFormSubmissionInfoResponse, GetSalesPersonBySubjectIDRequest, GetSalesPersonBySubjectIDResponse, GetTaskAccountsRequest, GetTaskAccountsResponse, GetTaskConciergeAccountRequest, GetTaskConciergeAccountResponse, GetTaskHistoryRequest, GetTaskHistoryResponse, GetTaskRequest, GetTaskResponse, GetTaskStatusRequest, GetTaskStatusResponse, GetTasksRequest, GetTasksResponse, GetTemplateRequest, GetTemplateResponse, GetTreeRequest, GetTreeResponse, GoType, GroupApiService, GroupGetMultiRequest, GroupGetMultiResponse, GroupSdkService, GroupedMetadata, GroupedTags, History, HydratedAccessPermissions, HydratedAttachment, HydratedConversationPersonaType, HydratedGroupedMetadata, HydratedGroupedTags, HydratedKeyValue, HydratedKeyValues, HydratedRangeField, HydratedSort, HydratedSortDirection, HydratedTagGroup, HydratedTask, HydratedTaskConversation, HydratedTaskHistory, HydratedTaskIdentity, HydratedTaskProjectionFilter, HydratedValue, KeyValueField, KeyValueTypes, KeyValues, KeyValuesKeyValue, KeyValuesKeyValueValue, ListAccountSocialServicesRequest, ListAccountSocialServicesResponse, ListAccountsRequest, ListAccountsResponse, ListActivitiesRequest, ListActivitiesResponse, ListAssigneesForPartnerRequest, ListAssigneesForPartnerResponse, ListAuxiliaryDataFieldSchemaRequest, ListAuxiliaryDataFieldSchemaRequestFilters, ListAuxiliaryDataFieldSchemaResponse, ListAuxiliaryDataRequest, ListAuxiliaryDataResponse, ListCommitmentDatesRequest, ListCommitmentDatesResponse, ListCommitmentDatesResponseCommitmentDateEntry, ListCustomTagsRequest, ListCustomTagsResponse, ListGroupMembersRequest, ListGroupMembersResponse, ListGroupRequest, ListGroupResponse, ListGroupsByMembersRequest, ListGroupsByMembersResponse, ListGroupsByMembersResponseGroupsEntry, ListProductsRequest, ListProductsResponse, ListTaskStatusesRequest, ListTaskStatusesResponse, ListTemplatesRequest, ListTemplatesResponse, LoadCommentsRequest, LoadCommentsResponse, LookupProductFulfillmentSettingRequest, LookupProductFulfillmentSettingResponse, MarketData, Metric, MetricResponses, MetricResponsesMetricResponse, MetricsApiService, MonthlyRecurringOptions, MultiCommandRequest, MultiCommandRequestEvent, MultiCommandResponses, MultiCommandResponsesMultiCommandResponse, MultiSearchTaskRequest, MultiString, NAPData, NotifyReviewCommentRequest, Operator, OperatorNode, OrderFormApiService, OrderFormFieldSubmission, OrderFormFileField, PagedRequestOptions, PagedResponseMetadata, ParentData, PartnerBranding, PartnerData, Path, PauseConciergeAccountRequest, Permissions, Persona, PersonaType, PlatformLocation, Post, Product, ProductDetails, ProductFilterOperator, ProductFulfillmentApiService, ProductFulfillmentSetting, ProductFulfillmentSettingKey, ProductFulfillmentSettingsApiService, ProductFulfillmentSettingsSdkService, ProjectCommentsCountData, ProjectStatusData, ProjectSubtaskCount, ProjectSubtaskCountRequest, ProjectSubtaskCountResponse, ProjectionFilter, RangeField, RecurringTask, RecurringTaskExpires, RecurringTaskFrequencies, RecurringTaskProjectionFilter, RecurringTaskTypes, RecurringTasksApiService, RemoveAssigneeRequest, RemoveAttachmentRequest, RemoveCustomTagsRequest, RemoveGroupMembersRequest, RemoveMultiAssigneeRequest, RemoveProductsRequest, RemoveTagsRequest, ReorderSubtask, ReorderSubtaskRequest, ResetEmailOptions, RespondToSocialCommentRequest, RespondToSocialCommentResponse, RestoreMultiTaskRequest, RestoreParentAndChildrenMultiRequest, RestoreTaskRequest, RuntimeField, SalesOrderFormSubmissionField, Salesperson, SearchHydratedTaskRequest, SearchHydratedTaskResponse, SearchRecurringTaskRequest, SearchRecurringTaskResponse, SearchTaskRequest, SearchTaskResponse, SendCalendarForClientFeedbackExternalRequest, SendEmailRequest, SendFeedbackRequest, SendNotificationRequest, SendNotificationResponse, SendWelcomeEmailRequest, SetAccountNoteRequest, SetDescriptionRequest, SetDueDateRequest, SetFulfillingPartnerRequest, SetKeyValue, SetKeyValuesRequest, SetMeetingTaskInfoRequest, SetMultiDueDateRequest, SetMultiNotesRequest, SetMultiStatusRequest, SetNotesRequest, SetStatusRequest, SetTemplateRequest, SetTitleRequest, SetTypeRequest, SocialCalendarApiService, Sort, SortDirection, SourceSetting, SourceSettingsResponse, Status, TagGroup, Task, TaskAuxiliaryFieldDataApiService, TaskAuxiliaryFieldSchemaApiService, TaskHistory, TaskIdentity, TaskManagerApiService, TaskManagerAuthApiService, TaskManagerGroup, TaskManagerGroupList, TaskManagerSdkService, TaskMetricsSdkService, TaskStatus, TaskStatusesApiService, TaskStatusesSdkService, TaskTree, Template, TemplateIdentity, TemplateInfo, TemplatesApiService, TemplatesSdkService, UnarchiveAuxiliaryDataFieldSchemaRequest, UpdateAccountListingSourceRequest, UpdateAccountMultiListingSourceRequest, UpdateAuxiliaryDataFieldSchemaRequest, UpdateCustomTagRequest, UpdateDigitalAgentRequest, UpdateDigitalAgentRequestPartnerPermissionsEntry, UpdateGroupNameRequest, UpdateRecurringTaskRequest, UpdateRecurringTaskResponse, UpdateTaskStatusRequest, UpdateTemplateRequest, UpdateTemplateRequestCommand, UpsertAuxiliaryDataRequest, UserInfo, UserParam, ValueMetricResponse, VendorApiService, VendorSdkService, WeeklyRecurringOptions, WelcomeEmailOptions, YearlyRecurringOptions };\n"],"mappings":"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","names":["PersonaType","RangeField","SortDirection","ExportColumns","ExportTypes","AccountSocialService","DateField","FuzzyRangeField","FuzzySortDirection","Operator","RuntimeField","HydratedConversationPersonaType","HydratedRangeField","HydratedSortDirection","AuxiliaryDataFieldType","ActivityTypes","CommentType","ConversationTypes","PlatformLocation","enumStringToValue$n","enumRef","value","AccessPermissions","_AccessPermissions","proto","m","kwargs","toReturn","Attachment","_Attachment","Conversation","_Conversation","PersonaType","History","_History","KeyValuesKeyValue","_KeyValuesKeyValue","KeyValuesKeyValueValue","KeyValues","_KeyValues","Task","_Task","TaskIdentity","_TaskIdentity","KeyValuesKeyValueValue","_KeyValuesKeyValueValue","proto","m","kwargs","toReturn","enumStringToValue$m","enumRef","value","AddAssigneeRequest","_AddAssigneeRequest","TaskIdentity","AddAttachmentRequest","_AddAttachmentRequest","Attachment","AddConversationRequest","_AddConversationRequest","PersonaType","AddHistoryRequest","_AddHistoryRequest","proto","m","TaskIdentity","kwargs","toReturn","AddMultiAssigneeRequest","_AddMultiAssigneeRequest","AddAssigneeRequest","AddMultipleSubtasksRequest","_AddMultipleSubtasksRequest","AddSubtaskRequest","_AddSubtaskRequest","KeyValues","Attachment","AddTagsRequest","_AddTagsRequest","CommandResponse","_CommandResponse","DeleteMultiTaskRequest","_DeleteMultiTaskRequest","proto","m","DeleteTaskRequest","kwargs","toReturn","_DeleteTaskRequest","TaskIdentity","GenerateTaskRequest","_GenerateTaskRequest","proto","m","KeyValues","Attachment","kwargs","toReturn","GetTaskRequest","_GetTaskRequest","proto","m","TaskIdentity","kwargs","toReturn","GetTaskResponse","_GetTaskResponse","Task","GetTasksRequest","_GetTasksRequest","GetTasksResponse","_GetTasksResponse","GroupedMetadata","_GroupedMetadata","proto","m","KeyValues","kwargs","toReturn","GroupedTags","_GroupedTags","TagGroup","MultiCommandResponsesMultiCommandResponse","_MultiCommandResponsesMultiCommandResponse","proto","m","TaskIdentity","kwargs","toReturn","MultiCommandResponses","_MultiCommandResponses","RemoveAssigneeRequest","_RemoveAssigneeRequest","proto","m","TaskIdentity","kwargs","toReturn","RemoveAttachmentRequest","_RemoveAttachmentRequest","Attachment","RemoveMultiAssigneeRequest","_RemoveMultiAssigneeRequest","proto","m","RemoveAssigneeRequest","kwargs","toReturn","RemoveTagsRequest","_RemoveTagsRequest","TaskIdentity","ReorderSubtaskRequest","_ReorderSubtaskRequest","RestoreMultiTaskRequest","_RestoreMultiTaskRequest","RestoreTaskRequest","_RestoreTaskRequest","SearchTaskRequest","_SearchTaskRequest","KeyValues","enumStringToValue$m","SortDirection","RangeField","Sort","GroupedTags","GroupedMetadata","SearchTaskResponse","_SearchTaskResponse","Task","SetDescriptionRequest","_SetDescriptionRequest","SetDueDateRequest","_SetDueDateRequest","SetKeyValuesRequest","_SetKeyValuesRequest","proto","m","TaskIdentity","KeyValues","kwargs","toReturn","SetMultiDueDateRequest","_SetMultiDueDateRequest","SetDueDateRequest","SetMultiNotesRequest","_SetMultiNotesRequest","SetNotesRequest","SetMultiStatusRequest","_SetMultiStatusRequest","SetStatusRequest","_SetNotesRequest","_SetStatusRequest","SetTitleRequest","_SetTitleRequest","Sort","_Sort","proto","m","enumStringToValue$m","SortDirection","kwargs","toReturn","TagGroup","_TagGroup","PagedRequestOptions","_PagedRequestOptions","proto","m","kwargs","toReturn","PagedResponseMetadata","_PagedResponseMetadata","AddGroupMembersRequest","_AddGroupMembersRequest","proto","m","kwargs","toReturn","CreateGroupRequest","_CreateGroupRequest","CreateGroupResponse","_CreateGroupResponse","DeleteGroupRequest","_DeleteGroupRequest","GroupGetMultiRequest","_GroupGetMultiRequest","Path","GroupGetMultiResponse","_GroupGetMultiResponse","TaskManagerGroup","ListGroupMembersRequest","_ListGroupMembersRequest","proto","m","PagedRequestOptions","kwargs","toReturn","ListGroupMembersResponse","_ListGroupMembersResponse","PagedResponseMetadata","ListGroupRequest","_ListGroupRequest","ListGroupResponse","_ListGroupResponse","TaskManagerGroup","ListGroupsByMembersRequest","_ListGroupsByMembersRequest","ListGroupsByMembersResponse","_ListGroupsByMembersResponse","obj","k","TaskManagerGroupList","Path","_Path","RemoveGroupMembersRequest","_RemoveGroupMembersRequest","_TaskManagerGroup","_TaskManagerGroupList","UpdateGroupNameRequest","_UpdateGroupNameRequest","UpdateTemplateRequestCommand","_UpdateTemplateRequestCommand","proto","m","MultiString","ReorderSubtask","Template","kwargs","toReturn","CreateTemplateRequest","_CreateTemplateRequest","DeleteTemplateRequest","_DeleteTemplateRequest","TemplateIdentity","GetTemplateRequest","_GetTemplateRequest","GetTemplateResponse","_GetTemplateResponse","ListTemplatesRequest","_ListTemplatesRequest","ListTemplatesResponse","_ListTemplatesResponse","_MultiString","_ReorderSubtask","_Template","_TemplateIdentity","UpdateTemplateRequest","_UpdateTemplateRequest","CreateTaskStatusRequest","_CreateTaskStatusRequest","proto","m","TaskStatus","kwargs","toReturn","CreateTaskStatusResponse","_CreateTaskStatusResponse","DeleteTaskStatusRequest","_DeleteTaskStatusRequest","GetTaskStatusRequest","_GetTaskStatusRequest","GetTaskStatusResponse","_GetTaskStatusResponse","ListTaskStatusesRequest","_ListTaskStatusesRequest","ListTaskStatusesResponse","_ListTaskStatusesResponse","_TaskStatus","UpdateTaskStatusRequest","_UpdateTaskStatusRequest","enumStringToValue$h","enumRef","value","ExportProjectsRequest","_ExportProjectsRequest","ExportTypes","ProjectSubtaskCountRequest","v","ExportColumns","ProjectSubtaskCount","_ProjectSubtaskCount","_ProjectSubtaskCountRequest","RangeField","ProjectSubtaskCountResponse","_ProjectSubtaskCountResponse","enumStringToValue$g","CreateDigitalAgentRequest","_CreateDigitalAgentRequest","obj","k","Permissions","WelcomeEmailOptions","DeleteUserRequest","_DeleteUserRequest","DigitalAgent","_DigitalAgent","GetDigitalAgentsBySubjectIdsRequest","_GetDigitalAgentsBySubjectIdsRequest","GetDigitalAgentsBySubjectIdsResponse","_GetDigitalAgentsBySubjectIdsResponse","GetDigitalAgentsByUserIdsRequest","_GetDigitalAgentsByUserIdsRequest","GetDigitalAgentsByUserIdsResponse","_GetDigitalAgentsByUserIdsResponse","GetMultiUserInfoExternalRequest","_GetMultiUserInfoExternalRequest","UserParam","GetMultiUserInfoExternalResponse","_GetMultiUserInfoExternalResponse","UserInfo","ListAssigneesForPartnerRequest","_ListAssigneesForPartnerRequest","ListAssigneesForPartnerResponse","_ListAssigneesForPartnerResponse","Permissions","_Permissions","proto","m","kwargs","toReturn","ResetEmailOptions","_ResetEmailOptions","SendWelcomeEmailRequest","_SendWelcomeEmailRequest","UpdateDigitalAgentRequest","_UpdateDigitalAgentRequest","obj","k","UserInfo","_UserInfo","UserParam","_UserParam","enumStringToValue$g","PersonaType","WelcomeEmailOptions","_WelcomeEmailOptions","proto","m","kwargs","toReturn","Salesperson","_Salesperson","proto","m","kwargs","toReturn","FieldMask","_FieldMask","proto","m","kwargs","toReturn","enumStringToValue$a","enumRef","value","AccountGroup","_AccountGroup","proto","m","NAPData","ExternalIdentifiers","ContactDetails","Salesperson","kwargs","toReturn","ConciergeAccount","_ConciergeAccount","proto","m","kwargs","toReturn","ContactDetails","_ContactDetails","CreateConciergeAccountRequest","_CreateConciergeAccountRequest","DeactivateConciergeAccountRequest","_DeactivateConciergeAccountRequest","ExternalIdentifiers","_ExternalIdentifiers","GetAccountListingSourcesSettingsRequest","_GetAccountListingSourcesSettingsRequest","GetPurchasingPartnerAccountRequest","_GetPurchasingPartnerAccountRequest","FieldMask","GetPurchasingPartnerAccountResponse","_GetPurchasingPartnerAccountResponse","AccountGroup","GetPurchasingPartnerConciergeAccountRequest","_GetPurchasingPartnerConciergeAccountRequest","GetPurchasingPartnerConciergeAccountResponse","_GetPurchasingPartnerConciergeAccountResponse","GetSalesOrderFormSubmissionInfoRequest","_GetSalesOrderFormSubmissionInfoRequest","GetSalesOrderFormSubmissionInfoResponse","_GetSalesOrderFormSubmissionInfoResponse","SalesOrderFormSubmissionField","GetTaskAccountsRequest","_GetTaskAccountsRequest","TaskIdentity","GetTaskAccountsResponse","_GetTaskAccountsResponse","GetTaskConciergeAccountRequest","_GetTaskConciergeAccountRequest","GetTaskConciergeAccountResponse","_GetTaskConciergeAccountResponse","ListAccountSocialServicesRequest","_ListAccountSocialServicesRequest","ListAccountSocialServicesResponse","_ListAccountSocialServicesResponse","v","enumStringToValue$a","AccountSocialService","ListCommitmentDatesRequest","_ListCommitmentDatesRequest","PagedRequestOptions","ListCommitmentDatesResponse","_ListCommitmentDatesResponse","obj","k","PagedResponseMetadata","NAPData","_NAPData","PauseConciergeAccountRequest","_PauseConciergeAccountRequest","_SalesOrderFormSubmissionField","SetAccountNoteRequest","_SetAccountNoteRequest","SourceSetting","_SourceSetting","SourceSettingsResponse","_SourceSettingsResponse","UpdateAccountListingSourceRequest","_UpdateAccountListingSourceRequest","UpdateAccountMultiListingSourceRequest","_UpdateAccountMultiListingSourceRequest","i","enumStringToValue$7","enumRef","value","ChildNode","_ChildNode","proto","m","OperatorNode","Filters","kwargs","toReturn","DateFilter","_DateFilter","DateField","_Filters","FuzzyRangeFilter","_FuzzyRangeFilter","FuzzyRangeField","FuzzySort","_FuzzySort","FuzzySortDirection","FuzzyTaskSearchRequest","_FuzzyTaskSearchRequest","PagedRequestOptions","ProjectionFilter","v","RuntimeField","FuzzyTaskSearchResponse","_FuzzyTaskSearchResponse","Task","PagedResponseMetadata","_OperatorNode","Operator","_ProjectionFilter","enumStringToValue$6","AccountData","_AccountData","AccountSalespersonData","_AccountSalespersonData","FuzzySearchHydratedTasksRequest","_FuzzySearchHydratedTasksRequest","HydratedTaskProjectionFilter","FuzzySearchHydratedTasksResponse","_FuzzySearchHydratedTasksResponse","HydratedTask","GetHydratedTaskRequest","_GetHydratedTaskRequest","HydratedTaskIdentity","GetHydratedTaskResponse","_GetHydratedTaskResponse","GetMultiHydratedTaskRequest","_GetMultiHydratedTaskRequest","GetMultiHydratedTaskResponse","_GetMultiHydratedTaskResponse","HydratedAccessPermissions","_HydratedAccessPermissions","HydratedAttachment","_HydratedAttachment","HydratedGroupedMetadata","_HydratedGroupedMetadata","HydratedKeyValues","HydratedGroupedTags","_HydratedGroupedTags","HydratedTagGroup","HydratedKeyValue","_HydratedKeyValue","HydratedValue","_HydratedKeyValues","HydratedSort","_HydratedSort","HydratedSortDirection","_HydratedTagGroup","_HydratedTask","HydratedTaskHistory","HydratedTaskConversation","PartnerData","MarketData","ParentData","ProjectStatusData","ProjectCommentsCountData","_HydratedTaskConversation","HydratedConversationPersonaType","_HydratedTaskHistory","_HydratedTaskIdentity","_HydratedTaskProjectionFilter","_HydratedValue","_MarketData","_ParentData","_PartnerData","_ProjectCommentsCountData","_ProjectStatusData","SearchHydratedTaskRequest","_SearchHydratedTaskRequest","HydratedRangeField","SearchHydratedTaskResponse","_SearchHydratedTaskResponse","enumStringToValue$2","enumRef","value","ArchiveAuxiliaryDataFieldSchemaRequest","_ArchiveAuxiliaryDataFieldSchemaRequest","proto","m","FieldSchemaIdentifier","kwargs","toReturn","AuxiliaryDataFieldSchema","_AuxiliaryDataFieldSchema","AuxiliaryDataFieldType","DropdownOption","AuxiliaryDataObjectID","_AuxiliaryDataObjectID","CreateAuxiliaryDataFieldSchemaRequest","_CreateAuxiliaryDataFieldSchemaRequest","_DropdownOption","FieldDataUpsertOperation","_FieldDataUpsertOperation","_FieldSchemaIdentifier","ListAuxiliaryDataFieldSchemaRequestFilters","_ListAuxiliaryDataFieldSchemaRequestFilters","GetAuxiliaryDataFieldSchemaRequest","_GetAuxiliaryDataFieldSchemaRequest","GetAuxiliaryDataFieldSchemaResponse","_GetAuxiliaryDataFieldSchemaResponse","GetMultiAuxiliaryDataFieldSchemaRequest","_GetMultiAuxiliaryDataFieldSchemaRequest","GetMultiAuxiliaryDataFieldSchemaResponse","_GetMultiAuxiliaryDataFieldSchemaResponse","ListAuxiliaryDataFieldSchemaRequest","_ListAuxiliaryDataFieldSchemaRequest","PagedRequestOptions","ListAuxiliaryDataFieldSchemaResponse","_ListAuxiliaryDataFieldSchemaResponse","PagedResponseMetadata","ListAuxiliaryDataRequest","_ListAuxiliaryDataRequest","ListAuxiliaryDataResponse","_ListAuxiliaryDataResponse","UnarchiveAuxiliaryDataFieldSchemaRequest","_UnarchiveAuxiliaryDataFieldSchemaRequest","UpdateAuxiliaryDataFieldSchemaRequest","_UpdateAuxiliaryDataFieldSchemaRequest","FieldMask","UpsertAuxiliaryDataRequest","_UpsertAuxiliaryDataRequest","enumStringToValue$1","AccountChangedRequest","_AccountChangedRequest","Activity","_Activity","ActivityTypes","AddCommentRequest","_AddCommentRequest","TaskIdentity","CommentType","PlatformLocation","AddConversationWithNotificationRequest","_AddConversationWithNotificationRequest","AddConversationRequest","ConversationTypes","AskQuestionRequest","_AskQuestionRequest","PersonaType","Comment","_Comment","CommentProjectionFilter","_CommentProjectionFilter","CreateActivityRequest","_CreateActivityRequest","CreateActivityResponse","_CreateActivityResponse","CreateMultiProjectFromTemplateRequest","_CreateMultiProjectFromTemplateRequest","CreateProjectFromTemplateRequest","_CreateProjectFromTemplateRequest","CreateProjectFromTemplateSynchronousResponse","_CreateProjectFromTemplateSynchronousResponse","CreateTemplateFromProjectResponse","_CreateTemplateFromProjectResponse","DecryptNotesRequest","_DecryptNotesRequest","DecryptNotesResponse","_DecryptNotesResponse","EncryptNotesRequest","_EncryptNotesRequest","EncryptNotesResponse","_EncryptNotesResponse","GenerateFileUploadUrlRequest","_GenerateFileUploadUrlRequest","GenerateFileUploadUrlResponse","_GenerateFileUploadUrlResponse","GetActivityRequest","_GetActivityRequest","GetActivityResponse","_GetActivityResponse","GetAttachmentUrlRequest","_GetAttachmentUrlRequest","GetAttachmentUrlResponse","_GetAttachmentUrlResponse","GetCommentCountRequest","_GetCommentCountRequest","GetCommentCountResponse","_GetCommentCountResponse","GetFulfilledPartnersRequest","_GetFulfilledPartnersRequest","GetFulfilledPartnersResponse","_GetFulfilledPartnersResponse","PartnerBranding","GetMeetingHostRequest","_GetMeetingHostRequest","GetMeetingHostResponse","_GetMeetingHostResponse","GetMultiCommentCountRequest","_GetMultiCommentCountRequest","GetMultiCommentCountResponse","_GetMultiCommentCountResponse","GetProductEntryUrlRequest","_GetProductEntryUrlRequest","GetProductEntryUrlResponse","_GetProductEntryUrlResponse","GetSalesPersonBySubjectIDRequest","_GetSalesPersonBySubjectIDRequest","GetSalesPersonBySubjectIDResponse","_GetSalesPersonBySubjectIDResponse","GetTaskHistoryRequest","_GetTaskHistoryRequest","GetTaskHistoryResponse","_GetTaskHistoryResponse","TaskHistory","ListActivitiesRequest","_ListActivitiesRequest","ListActivitiesResponse","_ListActivitiesResponse","LoadCommentsRequest","_LoadCommentsRequest","LoadCommentsResponse","_LoadCommentsResponse","NotifyReviewCommentRequest","_NotifyReviewCommentRequest","_PartnerBranding","RespondToSocialCommentRequest","_RespondToSocialCommentRequest","RespondToSocialCommentResponse","_RespondToSocialCommentResponse","RestoreParentAndChildrenMultiRequest","_RestoreParentAndChildrenMultiRequest","SendEmailRequest","_SendEmailRequest","SendFeedbackRequest","_SendFeedbackRequest","SendNotificationRequest","_SendNotificationRequest","SendNotificationResponse","_SendNotificationResponse","SetMeetingTaskInfoRequest","_SetMeetingTaskInfoRequest","_TaskHistory","environment","hostMap","HostService","t","ɵɵdefineInjectable","AccountsApiService","http","hostService","HttpHeaders","r","request","GetTaskAccountsRequest","map","resp","GetTaskAccountsResponse","GetTaskConciergeAccountRequest","GetTaskConciergeAccountResponse","GetPurchasingPartnerConciergeAccountRequest","GetPurchasingPartnerConciergeAccountResponse","GetPurchasingPartnerAccountRequest","GetPurchasingPartnerAccountResponse","SetAccountNoteRequest","__spreadProps","__spreadValues","GetAccountListingSourcesSettingsRequest","SourceSettingsResponse","UpdateAccountListingSourceRequest","UpdateAccountMultiListingSourceRequest","ListAccountSocialServicesRequest","ListAccountSocialServicesResponse","ListCommitmentDatesRequest","ListCommitmentDatesResponse","GetSalesOrderFormSubmissionInfoRequest","GetSalesOrderFormSubmissionInfoResponse","DeactivateConciergeAccountRequest","PauseConciergeAccountRequest","CreateConciergeAccountRequest","t","ɵɵinject","HttpClient","HostService","ɵɵdefineInjectable","DigitalAgentsApiService","http","hostService","HttpHeaders","r","request","ListAssigneesForPartnerRequest","map","resp","ListAssigneesForPartnerResponse","GetDigitalAgentsByUserIdsRequest","GetDigitalAgentsByUserIdsResponse","GetDigitalAgentsBySubjectIdsRequest","GetDigitalAgentsBySubjectIdsResponse","CreateDigitalAgentRequest","DigitalAgent","UpdateDigitalAgentRequest","GetMultiUserInfoExternalRequest","GetMultiUserInfoExternalResponse","DeleteUserRequest","__spreadProps","__spreadValues","SendWelcomeEmailRequest","t","ɵɵinject","HttpClient","HostService","ɵɵdefineInjectable","GroupApiService","CreateGroupRequest","CreateGroupResponse","AddGroupMembersRequest","RemoveGroupMembersRequest","ListGroupMembersRequest","ListGroupMembersResponse","ListGroupRequest","ListGroupResponse","UpdateGroupNameRequest","DeleteGroupRequest","ListGroupsByMembersRequest","ListGroupsByMembersResponse","GroupGetMultiRequest","GroupGetMultiResponse","MetricsApiService","ProjectSubtaskCountRequest","ProjectSubtaskCountResponse","ExportProjectsRequest","TaskAuxiliaryFieldDataApiService","http","hostService","HttpHeaders","r","request","ListAuxiliaryDataRequest","map","resp","ListAuxiliaryDataResponse","UpsertAuxiliaryDataRequest","__spreadProps","__spreadValues","t","ɵɵinject","HttpClient","HostService","ɵɵdefineInjectable","TaskAuxiliaryFieldSchemaApiService","CreateAuxiliaryDataFieldSchemaRequest","GetAuxiliaryDataFieldSchemaRequest","GetAuxiliaryDataFieldSchemaResponse","GetMultiAuxiliaryDataFieldSchemaRequest","GetMultiAuxiliaryDataFieldSchemaResponse","ListAuxiliaryDataFieldSchemaRequest","ListAuxiliaryDataFieldSchemaResponse","UpdateAuxiliaryDataFieldSchemaRequest","ArchiveAuxiliaryDataFieldSchemaRequest","UnarchiveAuxiliaryDataFieldSchemaRequest","TaskManagerApiService","CreateProjectFromTemplateRequest","CommandResponse","CreateProjectFromTemplateSynchronousResponse","TaskIdentity","CreateTemplateFromProjectResponse","CreateMultiProjectFromTemplateRequest","MultiCommandResponses","SendNotificationRequest","SendNotificationResponse","CreateActivityRequest","CreateActivityResponse","GetActivityRequest","GetActivityResponse","ListActivitiesRequest","ListActivitiesResponse","AccountChangedRequest","SetMeetingTaskInfoRequest","NotifyReviewCommentRequest","GetMeetingHostRequest","GetMeetingHostResponse","AskQuestionRequest","SendFeedbackRequest","AddConversationWithNotificationRequest","GetTaskHistoryRequest","GetTaskHistoryResponse","GetFulfilledPartnersRequest","GetFulfilledPartnersResponse","GenerateTaskRequest","DeleteTaskRequest","DeleteMultiTaskRequest","SetStatusRequest","SetMultiStatusRequest","SetNotesRequest","SetMultiNotesRequest","SetTitleRequest","SetDescriptionRequest","SetKeyValuesRequest","SetDueDateRequest","SetMultiDueDateRequest","RemoveAssigneeRequest","RemoveMultiAssigneeRequest","AddAssigneeRequest","AddMultiAssigneeRequest","GetTaskRequest","GetTaskResponse","GetTasksRequest","GetTasksResponse","AddSubtaskRequest","AddMultipleSubtasksRequest","RestoreTaskRequest","RestoreMultiTaskRequest","RestoreParentAndChildrenMultiRequest","AddTagsRequest","RemoveTagsRequest","GenerateFileUploadUrlRequest","GenerateFileUploadUrlResponse","AddAttachmentRequest","RemoveAttachmentRequest","GetAttachmentUrlRequest","GetAttachmentUrlResponse","ReorderSubtaskRequest","AddHistoryRequest","SearchTaskRequest","SearchTaskResponse","EncryptNotesRequest","EncryptNotesResponse","DecryptNotesRequest","DecryptNotesResponse","SendEmailRequest","GetProductEntryUrlRequest","GetProductEntryUrlResponse","GetSalesPersonBySubjectIDRequest","GetSalesPersonBySubjectIDResponse","FuzzyTaskSearchRequest","FuzzyTaskSearchResponse","GetHydratedTaskRequest","GetHydratedTaskResponse","GetMultiHydratedTaskRequest","GetMultiHydratedTaskResponse","SearchHydratedTaskRequest","SearchHydratedTaskResponse","FuzzySearchHydratedTasksRequest","FuzzySearchHydratedTasksResponse","AddCommentRequest","LoadCommentsRequest","LoadCommentsResponse","GetCommentCountRequest","GetCommentCountResponse","GetMultiCommentCountRequest","GetMultiCommentCountResponse","RespondToSocialCommentRequest","RespondToSocialCommentResponse","TaskStatusesApiService","http","hostService","HttpHeaders","r","request","GetTaskStatusRequest","map","resp","GetTaskStatusResponse","ListTaskStatusesRequest","ListTaskStatusesResponse","CreateTaskStatusRequest","CreateTaskStatusResponse","UpdateTaskStatusRequest","__spreadProps","__spreadValues","DeleteTaskStatusRequest","t","ɵɵinject","HttpClient","HostService","ɵɵdefineInjectable","TemplatesApiService","GetTemplateRequest","GetTemplateResponse","ListTemplatesRequest","ListTemplatesResponse","CreateTemplateRequest","CommandResponse","UpdateTemplateRequest","DeleteTemplateRequest","TaskManagerSdkService","taskManagerApiService","partnerId","accountGroupId","templateId","idempotencyKey","fulfillingPartnerId","fulfillmentOrderId","request","CreateProjectFromTemplateRequest","map","res","requests","multiReq","CreateMultiProjectFromTemplateRequest","namespace","parentPath","taskId","newStatus","newVersion","identity","SetStatusRequest","notificationId","version","TaskIdentity","SendNotificationRequest","SetMultiStatusRequest","notes","SetNotesRequest","resp","activityType","content","receivers","CreateActivityRequest","Activity","dateHappened","activityId","GetActivityRequest","cursor","pageSize","ListActivitiesRequest","PagedRequestOptions","DeleteTaskRequest","fieldChanged","newValue","AccountChangedRequest","reviewId","reviewCommentMessage","NotifyReviewCommentRequest","hostId","GetMeetingHostRequest","r","AskQuestionRequest","message","sendFrom","sendTo","source","conversationType","SendFeedbackRequest","addConversationReq","AddConversationWithNotificationRequest","AddConversationRequest","GetTaskHistoryRequest","response","taskIdentity","fileName","contentType","GenerateFileUploadUrlRequest","attachmentId","GetAttachmentUrlRequest","GetFulfilledPartnersRequest","GetProductEntryUrlRequest","GetSalesPersonBySubjectIDRequest","FuzzyTaskSearchRequest","AddCommentRequest","LoadCommentsRequest","GetCommentCountRequest","GetMultiCommentCountRequest","RestoreParentAndChildrenMultiRequest","t","ɵɵinject","TaskManagerApiService","ɵɵdefineInjectable","Status","GroupSdkService","groupApiService","partnerId","name","pathNodes","membertype","namespace","members","cursor","pageSize","memberType","paths","t","ɵɵinject","GroupApiService","ɵɵdefineInjectable","TaskStatusesSdkService","statusApiService","statusId","map","response","textColour","backgroundColour","status","TaskStatusesApiService","TaskMetricsSdkService","metricsApiService","exportType","filters","columns","request","ExportProjectsRequest","MetricsApiService","AccountsSdkService","accountsApiService","identity","fieldMask","defaultFieldMask","GetTaskAccountsRequest","identities","GetTaskConciergeAccountRequest","purchasingPartnerId","accountGroupId","GetPurchasingPartnerConciergeAccountRequest","resp","GetPurchasingPartnerAccountRequest","r","AccountsApiService","DigitalAgentSdkService","digitalAgentApiService","onlySameNamespace","ListAssigneesForPartnerRequest","take","userIds","req","GetDigitalAgentsByUserIdsRequest","subjectIds","GetDigitalAgentsBySubjectIdsRequest","subjectId","usePartnerDefaultDomain","SendWelcomeEmailRequest","userId","DigitalAgentsApiService","TemplatesSdkService","templateApiService","GetTemplateRequest","ListTemplatesRequest","template","CreateTemplateRequest","version","commands","UpdateTemplateRequest","DeleteTemplateRequest","TemplatesApiService"],"x_google_ignoreList":[0]}