UNPKG

googleapis

Version:
1,155 lines 584 kB
/// <reference types="node" /> import { OAuth2Client, JWT, Compute, UserRefreshClient, BaseExternalAccountClient, GaxiosPromise, GoogleConfigurable, MethodOptions, StreamMethodOptions, GlobalOptions, GoogleAuth, BodyResponseCallback, APIRequestContext } from 'googleapis-common'; import { Readable } from 'stream'; export declare namespace cloudsearch_v1 { export interface Options extends GlobalOptions { version: 'v1'; } interface StandardParameters { /** * Auth client or API Key for the request */ auth?: string | OAuth2Client | JWT | Compute | UserRefreshClient | BaseExternalAccountClient | GoogleAuth; /** * V1 error format. */ '$.xgafv'?: string; /** * OAuth access token. */ access_token?: string; /** * Data format for response. */ alt?: string; /** * JSONP */ callback?: string; /** * Selector specifying which fields to include in a partial response. */ fields?: string; /** * API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token. */ key?: string; /** * OAuth 2.0 token for the current user. */ oauth_token?: string; /** * Returns response with indentations and line breaks. */ prettyPrint?: boolean; /** * Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. */ quotaUser?: string; /** * Legacy upload protocol for media (e.g. "media", "multipart"). */ uploadType?: string; /** * Upload protocol for media (e.g. "raw", "multipart"). */ upload_protocol?: string; } /** * Cloud Search API * * Cloud Search provides cloud-based search capabilities over Google Workspace data. The Cloud Search API allows indexing of non-Google Workspace data into Cloud Search. * * @example * ```js * const {google} = require('googleapis'); * const cloudsearch = google.cloudsearch('v1'); * ``` */ export class Cloudsearch { context: APIRequestContext; debug: Resource$Debug; indexing: Resource$Indexing; media: Resource$Media; operations: Resource$Operations; query: Resource$Query; settings: Resource$Settings; stats: Resource$Stats; v1: Resource$V1; constructor(options: GlobalOptions, google?: GoogleConfigurable); } /** * Abuse reporting configuration outlining what is supported in this conference. */ export interface Schema$AbuseReportingConfig { /** * Whether the current call may include video recordings in its abuse reports. */ recordingAllowed?: boolean | null; /** * Whether the current call may include user generated content (chat, polls, Q&A...) in its abuse reports. */ writtenUgcAllowed?: boolean | null; } /** * Information about how devices in a meeting have acked for a session/operation. */ export interface Schema$AckInfo { /** * Output only. Number of meeting devices that have not acked yet. */ unackedDeviceCount?: number | null; /** * Output only. IDs of meeting devices (at most ten are provided) that have not acked yet. */ unackedDeviceIds?: string[] | null; } /** * The request set by clients to instruct Backend how the user intend to fix the ACL. Technically it's not a request to ACL Fixer, because Backend uses /DriveService.Share to modify Drive ACLs. */ export interface Schema$AclFixRequest { /** * For Spaces messages: This field is ignored. For DMs messages: The list of email addresses that should be added to the Drive item's ACL. In general, the list should not be empty when the boolean "should_fix" field is set; otherwise, the list should be empty. During transition - when clients do not specify this field but the "should_fix" is true, we follow the legacy behavior: share to all users in the DM regardless of emails. This behavior is being phased out. */ recipientEmails?: string[] | null; role?: string | null; /** * Whether to attempt to fix the ACL by adding the room or DM members to the Drive file's ACL. */ shouldFix?: boolean | null; } /** * The message reconstructed based on information in the response of /PermissionFixOptionsService.Query (or the Apiary API that wraps it). Indicates the ability of the requester to change the access to the Drive file for the room roster or the DM members. Used in GetMessagePreviewMetadataResponse only. */ export interface Schema$AclFixStatus { fixability?: string | null; /** * List of recipient email addresses for which access can be granted. This field contains the same email addresses from the GetMessagePreviewMetadata request if all recipients can be successfully added to the ACL as determined by Drive ACL Fixer. For now, the field is non-empty if and only if the "fixability" value is "CAN_FIX". */ fixableEmailAddress?: string[] | null; /** * List of recipient email addresses for which an out-of-domain-sharing warning must be shown, stating that these email addresses are not in the Google Apps organization that the requested item belong to. Empty if all recipients are in the same Google Apps organization. */ outOfDomainWarningEmailAddress?: string[] | null; } /** * Next tag: 4 */ export interface Schema$AclInfo { /** * Number of groups which have at least read access to the document. */ groupsCount?: number | null; /** * The scope to which the content was shared. */ scope?: string | null; /** * Number of users which have at least read access to the document. */ usersCount?: number | null; } /** * List of string parameters that developers can specify when the above action method (in apps script) is invoked. An example use case is for 3 snooze buttons: snooze now, snooze 1 day, snooze next week. Developers can have action method = snooze() and pass the snooze type and snooze time in list of string parameters. */ export interface Schema$ActionParameter { key?: string | null; value?: string | null; } export interface Schema$AddonComposeUiActionMarkup { type?: string | null; } /** * Earlier we used to populate just the affected_members list and inferred the new membership state (roles didn't exist back then) from the Type. go/dynamite-finra required backend to know the previous membership state to reconstruct membership history. The proper solution involved cleaning up up Type enum, but it was used in many, many places. This was added as a stop-gap solution to unblock FINRA without breaking everything. Later role update and target audience update started relying on this to communicate information to clients about what transition happened. So this is now required to be populated and should be in sync with affected_members for new messages. */ export interface Schema$AffectedMembership { affectedMember?: Schema$MemberId; priorMembershipRole?: string | null; priorMembershipState?: string | null; targetMembershipRole?: string | null; } /** * Represents a principal who has authenticated as any kind of user which the application understands. This is typically used for "wiki-like" security, where anyone is allowed access so long as they can be held accountable for that access. Since the purpose is knowing whom to blame, it is up to the application to decide what kinds of users it knows how to blame. For example, an application might choose to include GAIA users in "all authenticated users", but not include MDB users. Nothing here. */ export interface Schema$AllAuthenticatedUsersProto { } /** * NOTE WHEN ADDING NEW PROTO FIELDS: Be sure to add datapol annotations to new fields with potential PII, so they get scrubbed when logging protos for errors. NEXT TAG: 29 */ export interface Schema$Annotation { babelPlaceholderMetadata?: Schema$BabelPlaceholderMetadata; /** * LINT.ThenChange(//depot/google3/java/com/google/apps/dynamite/v1/backend/action/common/SystemMessageHelper.java) */ cardCapabilityMetadata?: Schema$CardCapabilityMetadata; /** * Whether the annotation should be rendered as a chip. If this is missing or unspecified, fallback to should_not_render on the metadata. */ chipRenderType?: string | null; consentedAppUnfurlMetadata?: Schema$ConsentedAppUnfurlMetadata; customEmojiMetadata?: Schema$CustomEmojiMetadata; dataLossPreventionMetadata?: Schema$DataLossPreventionMetadata; /** * Chip annotations */ driveMetadata?: Schema$DriveMetadata; formatMetadata?: Schema$FormatMetadata; groupRetentionSettingsUpdated?: Schema$GroupRetentionSettingsUpdatedMetaData; /** * Metadata for 1P integrations like tasks, calendar. These are supported only through integration server as 1P integrations use the integration API (which in turn uses backend API with special permissions) to post messages. Clients should never set this. LINT.IfChange */ gsuiteIntegrationMetadata?: Schema$GsuiteIntegrationMetadata; incomingWebhookChangedMetadata?: Schema$IncomingWebhookChangedMetadata; /** * LINT.ThenChange(//depot/google3/java/com/google/apps/dynamite/v1/backend/action/common/SystemMessageHelper.java) */ integrationConfigUpdated?: Schema$IntegrationConfigUpdatedMetadata; /** * Length of the text_body substring beginning from start_index the Annotation corresponds to. */ length?: number | null; /** * A unique client-assigned ID for this annotation. This is helpful in matching the back-filled annotations to the original annotations on client side, without having to re-parse the message. */ localId?: string | null; /** * Metadata for system messages. Clients should never set this. LINT.IfChange */ membershipChanged?: Schema$MembershipChangedMetadata; readReceiptsSettingsMetadata?: Schema$ReadReceiptsSettingsUpdatedMetadata; /** * Metadata that defines all of the required features that must be rendered in the message. Clients can use this to see whether they support the entire message, or show a fallback chip otherwise. See go/message-quoting-client-to-server for details. LINT.ThenChange( //depot/google3/java/com/google/apps/dynamite/v1/allshared/parser/AnnotationSanitizer.java, //depot/google3/java/com/google/apps/dynamite/v1/backend/action/common/SystemMessageHelper.java, //depot/google3/java/com/google/caribou/eli/mediation/chat/AnnotationTranslator.java ) */ requiredMessageFeaturesMetadata?: Schema$RequiredMessageFeaturesMetadata; roomUpdated?: Schema$RoomUpdatedMetadata; /** * Whether or not the annotation is invalidated by the server. Example of situations for invalidation include: when the URL is malformed, or when Drive item ID is rejected by Drive Service. */ serverInvalidated?: boolean | null; slashCommandMetadata?: Schema$SlashCommandMetadata; /** * Start index (0-indexed) of the Message text the Annotation corresponds to, inclusive. */ startIndex?: number | null; /** * Type of the Annotation. */ type?: string | null; /** * A unique server-assigned ID for this annotation. This is helpful in matching annotation objects when fetched from service. */ uniqueId?: string | null; uploadMetadata?: Schema$UploadMetadata; urlMetadata?: Schema$UrlMetadata; /** * Metadata that clients can set for annotations. LINT.IfChange In-text annotations */ userMentionMetadata?: Schema$UserMentionMetadata; videoCallMetadata?: Schema$VideoCallMetadata; youtubeMetadata?: Schema$YoutubeMetadata; } /** * Identifier of an App. */ export interface Schema$AppId { /** * Enum indicating the type of App this is. */ appType?: string | null; /** * Enum indicating which 1P App this is when app_type is GSUITE_APP. Determined & set by the 1P API as a convenience for all users of this identifier(Eg. clients, chime, backend etc.) to map to 1P properties. */ gsuiteAppType?: string | null; /** * Numeric identifier of the App. Set to Project number for 1/3P Apps. For Webhook, this is WebhookId. Determined & set by the 1P API from App credentials on the side channel. */ id?: string | null; } /** * An action that describes the behavior when the form is submitted. For example, an Apps Script can be invoked to handle the form. */ export interface Schema$AppsDynamiteSharedAction { /** * Apps Script function to invoke when the containing element is clicked/activated. */ function?: string | null; interaction?: string | null; loadIndicator?: string | null; /** * List of action parameters. */ parameters?: Schema$AppsDynamiteSharedActionActionParameter[]; } /** * List of string parameters to supply when the action method is invoked. For example, consider three snooze buttons: snooze now, snooze 1 day, snooze next week. You might use action method = snooze(), passing the snooze type and snooze time in the list of string parameters. */ export interface Schema$AppsDynamiteSharedActionActionParameter { /** * The name of the parameter for the action script. */ key?: string | null; /** * The value of the parameter. */ value?: string | null; } /** * Next Id: 7 */ export interface Schema$AppsDynamiteSharedActivityFeedAnnotationData { /** * Timestamp of when the Activity Feed message that contains this annotation was created. This is roughly when the activity happened, such as when a reaction happened, but will have at least some small delay, since the Activity Feed message is created asynchronously after. This timestamp should only be used for display when the activity create time is not available in the Chat UI, like the time of a reaction. */ activityFeedMessageCreateTime?: string | null; /** * Unique id of the Activity Feed message used by clients to implement click-to-source. This is the same messageId as the top-level id field for the Activity Feed item. */ activityFeedMessageId?: Schema$MessageId; chatItem?: Schema$AppsDynamiteSharedChatItem; /** * Only populated on read path and should not be persisted in storage. */ sharedUserInfo?: Schema$UserInfo; /** * Use shared_user_info instead. */ userInfo?: Schema$AppsDynamiteSharedActivityFeedAnnotationDataUserInfo; } /** * UserId of the AF item updater to show and the updater count to show. */ export interface Schema$AppsDynamiteSharedActivityFeedAnnotationDataUserInfo { /** * Describes how updater_count_to_show should be used. */ updaterCountDisplayType?: string | null; /** * The number of updaters for clients to show, currently set to the total number of updaters minus the one set in updater_to_show. */ updaterCountToShow?: number | null; /** * The updater for clients to show. */ updaterToShow?: Schema$UserId; } /** * Optional field for apps overriding display info */ export interface Schema$AppsDynamiteSharedAppProfile { /** * Displayed user avatar emoji. */ avatarEmoji?: string | null; /** * Displayed user avatar url. */ avatarUrl?: string | null; /** * Displayed user name. */ name?: string | null; } /** * This is the internal version of the API proto at google3/google/chat/v1/gsuite_message_integration.proto Data used to render Assistant suggestions. See go/bullseye-rendering. */ export interface Schema$AppsDynamiteSharedAssistantAnnotationData { /** * The suggestion to render in the card. */ suggestion?: Schema$AppsDynamiteSharedAssistantSuggestion; /** * Set when the initial query was unfulfillable. Only an on-demand unfulfillable query will result in a response (not a proactive query). 1. On-demand: user explicitly invokes the bot 2. Proactive: bot makes proactive suggestion (when available) by listening to all user messages. */ unfulfillable?: Schema$AppsDynamiteSharedAssistantUnfulfillableRequest; } /** * Represents info regarding suggestion debug information. */ export interface Schema$AppsDynamiteSharedAssistantDebugContext { /** * The query that triggered the resulting suggestion. */ query?: string | null; } /** * Data needed to render feedback on the Assistant card */ export interface Schema$AppsDynamiteSharedAssistantFeedbackContext { /** * Specifies a list of feedback chips to show */ feedbackChips?: Schema$AppsDynamiteSharedAssistantFeedbackContextFeedbackChip[]; /** * Whether the thumbs feedback is provided */ thumbsFeedback?: string | null; } /** * Suggestion chips for users to indicate positive or negative feedback */ export interface Schema$AppsDynamiteSharedAssistantFeedbackContextFeedbackChip { /** * What type of chip to display */ feedbackChipType?: string | null; /** * Whether the chip has been selected */ state?: string | null; } /** * Session context specific for Assistant suggestions. */ export interface Schema$AppsDynamiteSharedAssistantSessionContext { /** * Unique identifier populated by the contextual request handler for each vertical (Ex: File Suggestions, Smart Scheduling, etc.) that can be used to track sessions end-to-end. May span multiple users (sender-specific). */ contextualSessionId?: string | null; } /** * Data for an Assistant suggestion. */ export interface Schema$AppsDynamiteSharedAssistantSuggestion { /** * Info regarding suggestion debug information. */ debugContext?: Schema$AppsDynamiteSharedAssistantDebugContext; /** * Data for rendering feedback. */ feedbackContext?: Schema$AppsDynamiteSharedAssistantFeedbackContext; /** * Suggestion type that suggests documents (docs, slides, sheets). */ findDocumentSuggestion?: Schema$AppsDynamiteSharedFindDocumentSuggestion; /** * String representation of the suggestions provided. */ serializedSuggestions?: string | null; /** * Session context specific to the Assistant suggestion. */ sessionContext?: Schema$AppsDynamiteSharedAssistantSessionContext; } /** * Data for a response to an unfulfillable request. */ export interface Schema$AppsDynamiteSharedAssistantUnfulfillableRequest { } export interface Schema$AppsDynamiteSharedAvatarInfo { emoji?: Schema$AppsDynamiteSharedEmoji; } /** * Metadata used only in Dynamite backend for uploaded attachments. */ export interface Schema$AppsDynamiteSharedBackendUploadMetadata { /** * Blobstore path for the uploaded attachment */ blobPath?: string | null; /** * The original file name for the content, not the full path. */ contentName?: string | null; /** * Scotty reported content size by default. http://google3/uploader/agent/scotty_agent.proto?l=101&rcl=140889785 */ contentSize?: string | null; /** * Type is from Scotty's best_guess by default: http://google3/uploader/agent/scotty_agent.proto?l=51&rcl=140889785 */ contentType?: string | null; /** * The results of the Data Loss Prevention (DLP) scan of the attachment. DEPRECATED: use dlp_scan_summary instead. */ dlpScanOutcome?: string | null; /** * Summary of a Data Loss Prevention (DLP) scan of the attachment. Attachments are evaluated in the backend when they are uploaded. */ dlpScanSummary?: Schema$DlpScanSummary; /** * GroupId to which this attachment is uploaded. */ groupId?: Schema$GroupId; /** * Original dimension of the content. Only set for image attachments. */ originalDimension?: Schema$AppsDynamiteSharedDimension; /** * The message id of a quote reply referencing this attachment. When present, this attachment has been quoted in a reply message. Normally, the attachment is fetched through the message id in the blob_path, but in the case of a quote reply, the blob_path would contain the quoted message id. Thus this message id field is needed to fetch the quote reply message instead. This field is conditionally populated at read time for quotes and never persisted in storage. See go/message-quoting-attachments for more context. */ quoteReplyMessageId?: Schema$MessageId; /** * The SHA256 hash of the attachment bytes. */ sha256?: string | null; /** * User IP address at upload time. Ex. "123.1.2.3". Used by Ares abuse scanning. */ uploadIp?: string | null; /** * Timestamp of when user finished uploading the content. */ uploadTimestampUsec?: string | null; /** * VideoID of the video attachments. This ID shall meets the Youtube ID format of 16 hex characters. For example, '4c14b8825af6059b' is a valid ID. */ videoId?: string | null; /** * Full Blobstore ID for the video thumbnail. */ videoThumbnailBlobId?: string | null; /** * Result for a virus scan. */ virusScanResult?: string | null; } /** * Represents the complete border style applied to widgets. */ export interface Schema$AppsDynamiteSharedBorderStyle { /** * The corner radius for the border. */ cornerRadius?: number | null; /** * The colors to use when the type is `BORDER_TYPE_STROKE`. */ strokeColor?: Schema$Color; /** * The border type. */ type?: string | null; } /** * A button. Can be a text button or an image button. */ export interface Schema$AppsDynamiteSharedButton { /** * The alternative text used for accessibility. Has no effect when an icon is set; use `icon.alt_text` instead. */ altText?: string | null; /** * If set, the button is filled with a solid background. */ color?: Schema$Color; /** * If true, the button is displayed in a disabled state and doesn't respond to user actions. */ disabled?: boolean | null; /** * The icon image. */ icon?: Schema$AppsDynamiteSharedIcon; /** * The action to perform when the button is clicked. */ onClick?: Schema$AppsDynamiteSharedOnClick; /** * The text of the button. */ text?: string | null; } /** * A list of buttons layed out horizontally. */ export interface Schema$AppsDynamiteSharedButtonList { buttons?: Schema$AppsDynamiteSharedButton[]; } export interface Schema$AppsDynamiteSharedCalendarEventAnnotationData { calendarEvent?: Schema$AppsDynamiteSharedCalendarEventAnnotationDataCalendarEvent; /** * Notification about the creation of an event. */ eventCreation?: Schema$AppsDynamiteSharedCalendarEventAnnotationDataEventCreation; } export interface Schema$AppsDynamiteSharedCalendarEventAnnotationDataCalendarEvent { /** * The end time of the event. */ endTime?: Schema$AppsDynamiteSharedCalendarEventAnnotationDataCalendarEventTime; /** * ID of the event. */ eventId?: string | null; /** * The start time of the event. */ startTime?: Schema$AppsDynamiteSharedCalendarEventAnnotationDataCalendarEventTime; /** * Title of the event (at the time the message was generated). */ title?: string | null; } export interface Schema$AppsDynamiteSharedCalendarEventAnnotationDataCalendarEventTime { /** * All day event. */ allDay?: Schema$Date; /** * Non all day event. */ timed?: string | null; } /** * Creation of an event (no extra data for now). */ export interface Schema$AppsDynamiteSharedCalendarEventAnnotationDataEventCreation { } /** * Data used to render Meet or Google Voice chips in Chat. See go/dynamite-calling-artifacts-in-chat. */ export interface Schema$AppsDynamiteSharedCallAnnotationData { /** * Timestamp when the call ended. Used to render the call ended system message. */ callEndedTimestamp?: string | null; /** * Required. Call metadata required to create the call artifacts. For now, the metadata contains only the call id to identify the call. This field allows additional data (e.g. voice call type) to be added if needed in the future. */ callMetadata?: Schema$AppsDynamiteSharedCallMetadata; /** * Required. Indicates the call status for the space. Used to determine the chip's state. */ callStatus?: string | null; } /** * Metadata required to generate call artifacts. This can either be the metadata for a Meet or, in the future, Google Voice call. */ export interface Schema$AppsDynamiteSharedCallMetadata { /** * Metadata specific for the Meet call. */ meetMetadata?: Schema$AppsDynamiteSharedMeetMetadata; } /** * A card is a UI element that can contain UI widgets such as text and images. For more information, see Cards . For example, the following JSON creates a card that has a header with the name, position, icons, and link for a contact, followed by a section with contact information like email and phone number. ``` { "header": { "title": "Heba Salam", "subtitle": "Software Engineer", "imageStyle": "ImageStyle.AVATAR", "imageUrl": "https://example.com/heba_salam.png", "imageAltText": "Avatar for Heba Salam" \}, "sections" : [ { "header": "Contact Info", "widgets": [ { "decorated_text": { "icon": { "knownIcon": "EMAIL" \}, "content": "heba.salam@example.com" \} \}, { "decoratedText": { "icon": { "knownIcon": "PERSON" \}, "content": "Online" \} \}, { "decoratedText": { "icon": { "knownIcon": "PHONE" \}, "content": "+1 (555) 555-1234" \} \}, { "buttons": [ { "textButton": { "text": "Share", \}, "onClick": { "openLink": { "url": "https://example.com/share" \} \} \}, { "textButton": { "text": "Edit", \}, "onClick": { "action": { "function": "goToView", "parameters": [ { "key": "viewType", "value": "EDIT" \} ], "loadIndicator": "LoadIndicator.SPINNER" \} \} \} ] \} ], "collapsible": true, "uncollapsibleWidgetsCount": 3 \} ], "cardActions": [ { "actionLabel": "Send Feedback", "onClick": { "openLink": { "url": "https://example.com/feedback" \} \} \} ], "name": "contact-card-K3wB6arF2H9L" \} ``` */ export interface Schema$AppsDynamiteSharedCard { /** * The actions of this card. They are added to a card's generated toolbar menu. For example, the following JSON constructs a card action menu with Settings and Send Feedback options: ``` "card_actions": [ { "actionLabel": "Setting", "onClick": { "action": { "functionName": "goToView", "parameters": [ { "key": "viewType", "value": "SETTING" \} ], "loadIndicator": "LoadIndicator.SPINNER" \} \} \}, { "actionLabel": "Send Feedback", "onClick": { "openLink": { "url": "https://example.com/feedback" \} \} \} ] ``` */ cardActions?: Schema$AppsDynamiteSharedCardCardAction[]; /** * The header of the card. A header usually contains a title and an image. */ header?: Schema$AppsDynamiteSharedCardCardHeader; /** * Name of the card, which is used as a identifier for the card in card navigation. */ name?: string | null; /** * Sections are separated by a line divider. */ sections?: Schema$AppsDynamiteSharedCardSection[]; } /** * A card action is the action associated with the card. For example, an invoice card might include actions such as delete invoice, email invoice, or open the invoice in a browser. */ export interface Schema$AppsDynamiteSharedCardCardAction { /** * The label that displays as the action menu item. */ actionLabel?: string | null; /** * The onclick action for this action item. */ onClick?: Schema$AppsDynamiteSharedOnClick; } export interface Schema$AppsDynamiteSharedCardCardHeader { /** * The alternative text of this image which is used for accessibility. */ imageAltText?: string | null; /** * The image's type. */ imageType?: string | null; /** * The URL of the image in the card header. */ imageUrl?: string | null; /** * The subtitle of the card header. */ subtitle?: string | null; /** * The title of the card header. The title must be specified. The header has a fixed height: if both a title and subtitle are specified, each takes up one line. If only the title is specified, it takes up both lines. */ title?: string | null; } /** * Card click which identifies one suggestion provided by the app/bot. */ export interface Schema$AppsDynamiteSharedCardClickSuggestion { /** * Identify the button/action that created the suggestion. A simple example would be a card button within the stream, or the id which can identify a specific suggestion. */ actionId?: string | null; /** * The message_id for the message that was posted by the app/bot. */ suggestionMessageId?: Schema$MessageId; } /** * A section contains a collection of widgets that are rendered vertically in the order that they are specified. Across all platforms, cards have a narrow fixed width, so there is currently no need for layout properties, for example, float. */ export interface Schema$AppsDynamiteSharedCardSection { /** * Indicates whether this section is collapsible. If a section is collapsible, the description must be given. */ collapsible?: boolean | null; /** * The header of the section. Formatted text is supported. */ header?: string | null; /** * The number of uncollapsible widgets. For example, when a section contains five widgets and the `numUncollapsibleWidget` is set to `2`, the first two widgets are always shown and the last three are collapsed as default. The `numUncollapsibleWidget` is taken into account only when collapsible is set to `true`. */ uncollapsibleWidgetsCount?: number | null; /** * A section must contain at least 1 widget. */ widgets?: Schema$AppsDynamiteSharedWidget[]; } /** * Next Id: 5 */ export interface Schema$AppsDynamiteSharedChatItem { /** * Information needed to render the specific type of feed item. */ activityInfo?: Schema$AppsDynamiteSharedChatItemActivityInfo[]; /** * Only populated on read path and should not be persisted in storage. */ groupInfo?: Schema$AppsDynamiteSharedChatItemGroupInfo; /** * Additional information about the original chat message that isn't captured in the top-level message proto. */ messageInfo?: Schema$AppsDynamiteSharedMessageInfo; } export interface Schema$AppsDynamiteSharedChatItemActivityInfo { feedItemNudge?: Schema$AppsDynamiteSharedChatItemActivityInfoFeedItemNudge; feedItemReactions?: Schema$AppsDynamiteSharedChatItemActivityInfoFeedItemReactions; feedItemThreadReply?: Schema$AppsDynamiteSharedChatItemActivityInfoFeedItemThreadReply; feedItemUserMention?: Schema$AppsDynamiteSharedChatItemActivityInfoFeedItemUserMention; } /** * Existence of this attribute indicates that the AF item is for a message nudge item. */ export interface Schema$AppsDynamiteSharedChatItemActivityInfoFeedItemNudge { /** * Nudge type of the nudge feed item. */ nudgeType?: string | null; } /** * Existence of this attribute indicates that the AF item is for message reactions, but it is intentionally left empty since the list of reactions can be found in the top-level Message.Reactions. */ export interface Schema$AppsDynamiteSharedChatItemActivityInfoFeedItemReactions { } /** * Existence of this attribute indicates that the AF item is for thread reply. */ export interface Schema$AppsDynamiteSharedChatItemActivityInfoFeedItemThreadReply { /** * Reply type of the thread reply feed item. The field is not persisted in storage. It's populated when constructing Activity Feed payload. */ replyType?: string | null; } /** * Existence of this attribute indicates that the AF item is for a user mention item. */ export interface Schema$AppsDynamiteSharedChatItemActivityInfoFeedItemUserMention { /** * User mention type */ type?: string | null; } /** * Information about the space that the item originated from. This will be used to display Activity Feed items from rooms, and only contain the necessary information, such as the space name and group attributes. NEXT TAG: 6 */ export interface Schema$AppsDynamiteSharedChatItemGroupInfo { /** * This is needed to determine what type of group the source message came from to support click-to-source. */ attributeCheckerGroupType?: string | null; groupName?: string | null; /** * Timestamp of when the group containing the message has been read by the user. */ groupReadTimeUsec?: string | null; /** * Indicates whether the group has inline replies enabled. If enabled, clients will render the space with inline replies. */ inlineThreadingEnabled?: boolean | null; } /** * Represents a Columns widget that displays a single row of columns. */ export interface Schema$AppsDynamiteSharedColumns { /** * Each card supports up to 2 columns. */ columnItems?: Schema$AppsDynamiteSharedColumnsColumn[]; /** * Controls how the column resizes based on screen width. */ wrapStyle?: string | null; } /** * Represents a Column that consists of widgets stacked vertically. */ export interface Schema$AppsDynamiteSharedColumnsColumn { /** * The horizontal alignment of the column. */ horizontalAlignment?: string | null; /** * Specifies how the column content is sized horizontally. */ horizontalSizeStyle?: string | null; /** * The vertical alignment of the column. */ verticalAlignment?: string | null; /** * LINT.ThenChange(//google/apps/card/v1/card.proto) Array of widgets included in the column. */ widgets?: Schema$AppsDynamiteSharedColumnsColumnWidgets[]; } /** * LINT.IfChange The `column` widget can contain these widgets. */ export interface Schema$AppsDynamiteSharedColumnsColumnWidgets { /** * ButtonList widget. */ buttonList?: Schema$AppsDynamiteSharedButtonList; /** * DateTimePicker widget. */ dateTimePicker?: Schema$AppsDynamiteSharedDateTimePicker; /** * DecoratedText widget. */ decoratedText?: Schema$AppsDynamiteSharedDecoratedText; /** * Image widget. */ image?: Schema$AppsDynamiteSharedImage; /** * SelectionInput widget. */ selectionInput?: Schema$AppsDynamiteSharedSelectionInput; /** * TextInput widget. */ textInput?: Schema$AppsDynamiteSharedTextInput; /** * Text paragraph widget. */ textParagraph?: Schema$AppsDynamiteSharedTextParagraph; } /** * Denotes a type of content report a user can send. */ export interface Schema$AppsDynamiteSharedContentReportType { /** * Required. Google-defined system violation, covering the most common violations. */ systemViolation?: string | null; } /** * Proto representation of a custom emoji. May be used in both APIs and in Spanner, but certain fields should be restricted to one or the other. See the per-field documentation for details. NEXT_TAG: 14 */ export interface Schema$AppsDynamiteSharedCustomEmoji { /** * ID for the underlying image data in Blobstore. This field should *only* be present in Spanner or within the server, but should not be exposed in public APIs. */ blobId?: string | null; /** * Content type of the file used to upload the emoji. Used for takeout. Written to Spanner when the emoji is created. */ contentType?: string | null; /** * Time when the Emoji was created, in microseconds. This field may be present in Spanner, within the server, or in public APIs. */ createTimeMicros?: string | null; /** * This field should *never* be persisted to Spanner. */ creatorUserId?: Schema$UserId; /** * Time when the emoji was deleted, in microseconds. This field may be present in Spanner, within the server, or in public APIs. Only present if the emoji has been deleted. */ deleteTimeMicros?: string | null; /** * Output only. A short-lived URL clients can use for directly accessing a custom emoji image. This field is intended for API consumption, and should *never* be persisted to Spanner. */ ephemeralUrl?: string | null; /** * This field should *never* be persisted to Spanner. */ ownerCustomerId?: Schema$CustomerId; /** * Opaque token that clients use to construct the URL for accessing the custom emoji’s image data. This field is intended for API consumption, and should *never* be persisted to Spanner. */ readToken?: string | null; /** * User-provided, human-readable ID for the custom emoji. Users are expected to observe this field in the UI instead of the UUID. This shortcode should be unique within an organization, but has no global uniqueness guarantees, unlike the UUID. This field should *never* be persisted to Spanner. */ shortcode?: string | null; /** * Snapshot of the current state of the emoji, which may differ from the source-of-truth in the CustomEmojis table. This field should *never* be persisted to Spanner. */ state?: string | null; updateTimeMicros?: string | null; /** * Unique key for a custom emoji resource. Required. This field is *always* populated. */ uuid?: string | null; } /** * The widget that lets users to specify a date and time. */ export interface Schema$AppsDynamiteSharedDateTimePicker { /** * The label for the field that displays to the user. */ label?: string | null; /** * The name of the text input that's used in formInput, and uniquely identifies this input. */ name?: string | null; /** * Triggered when the user clicks Save or Clear from the date/time picker dialog. This is only triggered if the value changed as a result of the Save/Clear operation. */ onChangeAction?: Schema$AppsDynamiteSharedAction; /** * The number representing the time zone offset from UTC, in minutes. If set, the `value_ms_epoch` is displayed in the specified time zone. If not set, it uses the user's time zone setting on the client side. */ timezoneOffsetDate?: number | null; /** * The type of the date/time picker. */ type?: string | null; /** * The value to display as the default value before user input or previous user input. It is represented in milliseconds (Epoch time). For `DATE_AND_TIME` type, the full epoch value is used. For `DATE_ONLY` type, only date of the epoch time is used. For `TIME_ONLY` type, only time of the epoch time is used. For example, you can set epoch time to `3 * 60 * 60 * 1000` to represent 3am. */ valueMsEpoch?: string | null; } /** * A widget that displays text with optional decorations such as a label above or below the text, an icon in front of the text, a selection widget or a button after the text. */ export interface Schema$AppsDynamiteSharedDecoratedText { /** * The formatted text label that shows below the main text. */ bottomLabel?: string | null; /** * A button that can be clicked to trigger an action. */ button?: Schema$AppsDynamiteSharedButton; /** * An icon displayed after the text. */ endIcon?: Schema$AppsDynamiteSharedIcon; /** * Deprecated in favor of start_icon. */ icon?: Schema$AppsDynamiteSharedIcon; /** * Only the top and bottom label and content region are clickable. */ onClick?: Schema$AppsDynamiteSharedOnClick; /** * The icon displayed in front of the text. */ startIcon?: Schema$AppsDynamiteSharedIcon; /** * A switch widget can be clicked to change its state or trigger an action. */ switchControl?: Schema$AppsDynamiteSharedDecoratedTextSwitchControl; /** * Required. The main widget formatted text. See Text formatting for details. */ text?: string | null; /** * The formatted text label that shows above the main text. */ topLabel?: string | null; /** * The wrap text setting. If `true`, the text is wrapped and displayed in multiline. Otherwise, the text is truncated. */ wrapText?: boolean | null; } export interface Schema$AppsDynamiteSharedDecoratedTextSwitchControl { /** * The control type, either switch or checkbox. */ controlType?: string | null; /** * The name of the switch widget that's used in formInput. */ name?: string | null; /** * The action when the switch state is changed. */ onChangeAction?: Schema$AppsDynamiteSharedAction; /** * If the switch is selected. */ selected?: boolean | null; /** * The value is what is passed back in the callback. */ value?: string | null; } /** * Dimension for the uploaded attachments. */ export interface Schema$AppsDynamiteSharedDimension { height?: number | null; width?: number | null; } /** * A divider that appears in between widgets. */ export interface Schema$AppsDynamiteSharedDivider { } /** * LINT.IfChange */ export interface Schema$AppsDynamiteSharedDlpMetricsMetadata { /** * [required] Describes the DLP status of message send and attachment upload events. */ dlpStatus?: string | null; } /** * Data for rendering a document. */ export interface Schema$AppsDynamiteSharedDocument { /** * Unique file ID. */ fileId?: string | null; /** * Justification to explain why this document is being suggested. */ justification?: Schema$AppsDynamiteSharedJustification; /** * Time the document was last modified. */ lastModifiedTime?: string | null; /** * Used to determine which icon to render (e.g. docs, slides, sheets) */ mimeType?: string | null; /** * Title of the document. */ title?: string | null; /** * URL of the document. */ url?: string | null; } export interface Schema$AppsDynamiteSharedEmoji { /** * A custom emoji. */ customEmoji?: Schema$AppsDynamiteSharedCustomEmoji; /** * A basic emoji represented by a unicode string. */ unicode?: string | null; } /** * Data for a FindDocument suggestion type. */ export interface Schema$AppsDynamiteSharedFindDocumentSuggestion { /** * List of documents to render as suggestions. */ documentSuggestions?: Schema$AppsDynamiteSharedDocument[]; /** * Whether to show the action buttons in the card for the suggestions. */ showActionButtons?: boolean | null; } /** * Represents a Grid widget that displays items in a configurable grid layout. */ export interface Schema$AppsDynamiteSharedGrid { /** * The border style to apply to each grid item. */ borderStyle?: Schema$AppsDynamiteSharedBorderStyle; /** * The number of columns to display in the grid. A default value is used if this field isn't specified, and that default value is different depending on where the grid is shown (dialog versus companion). */ columnCount?: number | null; /** * The items to display in the grid. */ items?: Schema$AppsDynamiteSharedGridGridItem[]; /** * This callback is reused by each individual grid item, but with the item's identifier and index in the items list added to the callback's parameters. */ onClick?: Schema$AppsDynamiteSharedOnClick; /** * The text that displays in the grid header. */ title?: string | null; } /** * Represents a single item in the grid layout. */ export interface Schema$AppsDynamiteSharedGridGridItem { /** * A user-specified identifier for this grid item. This identifier is returned in the parent Grid's onClick callback parameters. */ id?: string | null; /** * The image that displays in the grid item. */ image?: Schema$AppsDynamiteSharedImageComponent; /** * The layout to use for the grid item. */ layout?: string | null; /** * The grid item's subtitle. */ subtitle?: string | null; /** * The horizontal alignment of the grid item's text. */ textAlignment?: string | null; /** * The grid item's title. */ title?: string | null; } /** * NEXT TAG: 3 A GroupDetails proto will store the information pertaining to single Group. */ export interface Schema$AppsDynamiteSharedGroupDetails { /** * A simple text that describes the purpose of a single Group, the general theme of the topics to be posted and/or the denominator of the Group participants. */ description?: string | null; /** * A simple text describing the rules and expectations from members when participating in conversation. */ guidelines?: string | null; } export interface Schema$AppsDynamiteSharedGroupVisibility { state?: string | null; } export interface Schema$AppsDynamiteSharedIcon { /** * The description of the icon, u