google-api-ruby-client/generated/google-apis-keep_v1/lib/google/apis/keep_v1/classes.rb

464 lines
15 KiB
Ruby
Raw Normal View History

# Copyright 2020 Google LLC
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
require 'date'
require 'google/apis/core/base_service'
require 'google/apis/core/json_representation'
require 'google/apis/core/hashable'
require 'google/apis/errors'
module Google
module Apis
module KeepV1
# An attachment to a note.
class Attachment
include Google::Apis::Core::Hashable
# The MIME types (IANA media types) in which the attachment is available.
# Corresponds to the JSON property `mimeType`
# @return [Array<String>]
attr_accessor :mime_type
# The resource name;
# Corresponds to the JSON property `name`
# @return [String]
attr_accessor :name
def initialize(**args)
update!(**args)
end
# Update properties of this object
def update!(**args)
@mime_type = args[:mime_type] if args.key?(:mime_type)
@name = args[:name] if args.key?(:name)
end
end
# The request to add one or more permissions on the note. Currently, only the `
# WRITER` role may be specified. If adding a permission fails, then the entire
# request fails and no changes are made.
class BatchCreatePermissionsRequest
include Google::Apis::Core::Hashable
# The request message specifying the resources to create.
# Corresponds to the JSON property `requests`
# @return [Array<Google::Apis::KeepV1::CreatePermissionRequest>]
attr_accessor :requests
def initialize(**args)
update!(**args)
end
# Update properties of this object
def update!(**args)
@requests = args[:requests] if args.key?(:requests)
end
end
# The response for creating permissions on a note.
class BatchCreatePermissionsResponse
include Google::Apis::Core::Hashable
# Permissions created.
# Corresponds to the JSON property `permissions`
# @return [Array<Google::Apis::KeepV1::Permission>]
attr_accessor :permissions
def initialize(**args)
update!(**args)
end
# Update properties of this object
def update!(**args)
@permissions = args[:permissions] if args.key?(:permissions)
end
end
# The request to remove one or more permissions from a note. A permission with
# the `OWNER` role can't be removed. If removing a permission fails, then the
# entire request fails and no changes are made. Returns a 400 bad request error
# if a specified permission does not exist on the note.
class BatchDeletePermissionsRequest
include Google::Apis::Core::Hashable
# Required. The names of the permissions to delete. Format: `notes/`note`/
# permissions/`permission``
# Corresponds to the JSON property `names`
# @return [Array<String>]
attr_accessor :names
def initialize(**args)
update!(**args)
end
# Update properties of this object
def update!(**args)
@names = args[:names] if args.key?(:names)
end
end
# The request to add a single permission on the note.
class CreatePermissionRequest
include Google::Apis::Core::Hashable
# Required. The parent note where this permission will be created. Format: `
# notes/`note``
# Corresponds to the JSON property `parent`
# @return [String]
attr_accessor :parent
# A single permission on the note. Associates a `member` with a `role`.
# Corresponds to the JSON property `permission`
# @return [Google::Apis::KeepV1::Permission]
attr_accessor :permission
def initialize(**args)
update!(**args)
end
# Update properties of this object
def update!(**args)
@parent = args[:parent] if args.key?(:parent)
@permission = args[:permission] if args.key?(:permission)
end
end
# A generic empty message that you can re-use to avoid defining duplicated empty
# messages in your APIs. A typical example is to use it as the request or the
# response type of an API method. For instance: service Foo ` rpc Bar(google.
# protobuf.Empty) returns (google.protobuf.Empty); `
class Empty
include Google::Apis::Core::Hashable
def initialize(**args)
update!(**args)
end
# Update properties of this object
def update!(**args)
end
end
# Describes a single Google Family.
class Family
include Google::Apis::Core::Hashable
def initialize(**args)
update!(**args)
end
# Update properties of this object
def update!(**args)
end
end
# Describes a single Group.
class Group
include Google::Apis::Core::Hashable
# The group email.
# Corresponds to the JSON property `email`
# @return [String]
attr_accessor :email
def initialize(**args)
update!(**args)
end
# Update properties of this object
def update!(**args)
@email = args[:email] if args.key?(:email)
end
end
# The list of items for a single list note.
class ListContent
include Google::Apis::Core::Hashable
# The items in the list. The number of items must be less than 1,000.
# Corresponds to the JSON property `listItems`
# @return [Array<Google::Apis::KeepV1::ListItem>]
attr_accessor :list_items
def initialize(**args)
update!(**args)
end
# Update properties of this object
def update!(**args)
@list_items = args[:list_items] if args.key?(:list_items)
end
end
# A single list item in a note's list.
class ListItem
include Google::Apis::Core::Hashable
# Whether this item has been checked off or not.
# Corresponds to the JSON property `checked`
# @return [Boolean]
attr_accessor :checked
alias_method :checked?, :checked
# If set, list of list items nested under this list item. Only one level of
# nesting is allowed.
# Corresponds to the JSON property `childListItems`
# @return [Array<Google::Apis::KeepV1::ListItem>]
attr_accessor :child_list_items
# The block of text for a single text section or list item.
# Corresponds to the JSON property `text`
# @return [Google::Apis::KeepV1::TextContent]
attr_accessor :text
def initialize(**args)
update!(**args)
end
# Update properties of this object
def update!(**args)
@checked = args[:checked] if args.key?(:checked)
@child_list_items = args[:child_list_items] if args.key?(:child_list_items)
@text = args[:text] if args.key?(:text)
end
end
# The response when listing a page of notes.
class ListNotesResponse
include Google::Apis::Core::Hashable
# Next page's `page_token` field.
# Corresponds to the JSON property `nextPageToken`
# @return [String]
attr_accessor :next_page_token
# A page of notes.
# Corresponds to the JSON property `notes`
# @return [Array<Google::Apis::KeepV1::Note>]
attr_accessor :notes
def initialize(**args)
update!(**args)
end
# Update properties of this object
def update!(**args)
@next_page_token = args[:next_page_token] if args.key?(:next_page_token)
@notes = args[:notes] if args.key?(:notes)
end
end
# A single note.
class Note
include Google::Apis::Core::Hashable
# Output only. The attachments attached to this note.
# Corresponds to the JSON property `attachments`
# @return [Array<Google::Apis::KeepV1::Attachment>]
attr_accessor :attachments
# The content of the note.
# Corresponds to the JSON property `body`
# @return [Google::Apis::KeepV1::Section]
attr_accessor :body
# Output only. When this note was created.
# Corresponds to the JSON property `createTime`
# @return [String]
attr_accessor :create_time
# Output only. The resource name of this note. See general note on identifiers
# in KeepService.
# Corresponds to the JSON property `name`
# @return [String]
attr_accessor :name
# Output only. The list of permissions set on the note. Contains at least one
# entry for the note owner.
# Corresponds to the JSON property `permissions`
# @return [Array<Google::Apis::KeepV1::Permission>]
attr_accessor :permissions
# The title of the note. Length must be less than 1,000 characters.
# Corresponds to the JSON property `title`
# @return [String]
attr_accessor :title
# Output only. When this note was trashed. If `trashed`, the note is eventually
# deleted. If the note is not trashed, this field is not set (and the trashed
# field is `false`).
# Corresponds to the JSON property `trashTime`
# @return [String]
attr_accessor :trash_time
# Output only. `true` if this note has been trashed. If trashed, the note is
# eventually deleted.
# Corresponds to the JSON property `trashed`
# @return [Boolean]
attr_accessor :trashed
alias_method :trashed?, :trashed
# Output only. When this note was last modified.
# Corresponds to the JSON property `updateTime`
# @return [String]
attr_accessor :update_time
def initialize(**args)
update!(**args)
end
# Update properties of this object
def update!(**args)
@attachments = args[:attachments] if args.key?(:attachments)
@body = args[:body] if args.key?(:body)
@create_time = args[:create_time] if args.key?(:create_time)
@name = args[:name] if args.key?(:name)
@permissions = args[:permissions] if args.key?(:permissions)
@title = args[:title] if args.key?(:title)
@trash_time = args[:trash_time] if args.key?(:trash_time)
@trashed = args[:trashed] if args.key?(:trashed)
@update_time = args[:update_time] if args.key?(:update_time)
end
end
# A single permission on the note. Associates a `member` with a `role`.
class Permission
include Google::Apis::Core::Hashable
# Output only. Whether this member has been deleted. If the member is recovered,
# this value is set to false and the recovered member retains the role on the
# note.
# Corresponds to the JSON property `deleted`
# @return [Boolean]
attr_accessor :deleted
alias_method :deleted?, :deleted
# The email associated with the member. If set on create, the `email` field in
# the `User` or `Group` message must either be empty or match this field. On
# read, may be unset if the member does not have an associated email.
# Corresponds to the JSON property `email`
# @return [String]
attr_accessor :email
# Describes a single Google Family.
# Corresponds to the JSON property `family`
# @return [Google::Apis::KeepV1::Family]
attr_accessor :family
# Describes a single Group.
# Corresponds to the JSON property `group`
# @return [Google::Apis::KeepV1::Group]
attr_accessor :group
# Output only. The resource name.
# Corresponds to the JSON property `name`
# @return [String]
attr_accessor :name
# The role granted by this permission. The role determines the entitys ability
# to read, write, and share notes.
# Corresponds to the JSON property `role`
# @return [String]
attr_accessor :role
# Describes a single user.
# Corresponds to the JSON property `user`
# @return [Google::Apis::KeepV1::User]
attr_accessor :user
def initialize(**args)
update!(**args)
end
# Update properties of this object
def update!(**args)
@deleted = args[:deleted] if args.key?(:deleted)
@email = args[:email] if args.key?(:email)
@family = args[:family] if args.key?(:family)
@group = args[:group] if args.key?(:group)
@name = args[:name] if args.key?(:name)
@role = args[:role] if args.key?(:role)
@user = args[:user] if args.key?(:user)
end
end
# The content of the note.
class Section
include Google::Apis::Core::Hashable
# The list of items for a single list note.
# Corresponds to the JSON property `list`
# @return [Google::Apis::KeepV1::ListContent]
attr_accessor :list
# The block of text for a single text section or list item.
# Corresponds to the JSON property `text`
# @return [Google::Apis::KeepV1::TextContent]
attr_accessor :text
def initialize(**args)
update!(**args)
end
# Update properties of this object
def update!(**args)
@list = args[:list] if args.key?(:list)
@text = args[:text] if args.key?(:text)
end
end
# The block of text for a single text section or list item.
class TextContent
include Google::Apis::Core::Hashable
# The text of the note. The limits on this vary with the specific field using
# this type.
# Corresponds to the JSON property `text`
# @return [String]
attr_accessor :text
def initialize(**args)
update!(**args)
end
# Update properties of this object
def update!(**args)
@text = args[:text] if args.key?(:text)
end
end
# Describes a single user.
class User
include Google::Apis::Core::Hashable
# The user's email.
# Corresponds to the JSON property `email`
# @return [String]
attr_accessor :email
def initialize(**args)
update!(**args)
end
# Update properties of this object
def update!(**args)
@email = args[:email] if args.key?(:email)
end
end
end
end
end