# Copyright 2019 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. # NOTE: This file is auto generated by the elixir code generator program. # Do not edit this file manually. defmodule GoogleApi.Drive.V3.Model.LabelField do @moduledoc """ Representation of field, which is a typed key-value pair. ## Attributes * `dateString` (*type:* `list(Date.t)`, *default:* `nil`) - Only present if valueType is dateString. RFC 3339 formatted date: YYYY-MM-DD. * `id` (*type:* `String.t`, *default:* `nil`) - The identifier of this label field. * `integer` (*type:* `list(String.t)`, *default:* `nil`) - Only present if `valueType` is `integer`. * `kind` (*type:* `String.t`, *default:* `nil`) - This is always drive#labelField. * `selection` (*type:* `list(String.t)`, *default:* `nil`) - Only present if `valueType` is `selection` * `text` (*type:* `list(String.t)`, *default:* `nil`) - Only present if `valueType` is `text`. * `user` (*type:* `list(GoogleApi.Drive.V3.Model.User.t)`, *default:* `nil`) - Only present if `valueType` is `user`. * `valueType` (*type:* `String.t`, *default:* `nil`) - The field type. While new values may be supported in the future, the following are currently allowed: * `dateString` * `integer` * `selection` * `text` * `user` """ use GoogleApi.Gax.ModelBase @type t :: %__MODULE__{ :dateString => list(Date.t()) | nil, :id => String.t() | nil, :integer => list(String.t()) | nil, :kind => String.t() | nil, :selection => list(String.t()) | nil, :text => list(String.t()) | nil, :user => list(GoogleApi.Drive.V3.Model.User.t()) | nil, :valueType => String.t() | nil } field(:dateString, as: Date, type: :list) field(:id) field(:integer, type: :list) field(:kind) field(:selection, type: :list) field(:text, type: :list) field(:user, as: GoogleApi.Drive.V3.Model.User, type: :list) field(:valueType) end defimpl Poison.Decoder, for: GoogleApi.Drive.V3.Model.LabelField do def decode(value, options) do GoogleApi.Drive.V3.Model.LabelField.decode(value, options) end end defimpl Poison.Encoder, for: GoogleApi.Drive.V3.Model.LabelField do def encode(value, options) do GoogleApi.Gax.ModelBase.encode(value, options) end end