Sha256: 17d354aa7ff4d05479f424fa59f1250385dc11999d7483cee3e84d96c85e7643

Contents?: true

Size: 1.08 KB

Versions: 8

Compression:

Stored size: 1.08 KB

Contents

# typed: true
# frozen_string_literal: true

# require 'pry'

module CloudWaba
  module Models
    module Templates
      class Response < T::Struct
        extend ::T::Sig
        extend ::T::Helpers
        # "{\"id\":\"838949364353910\",\"status\":\"PENDING\",\"category\":\"MARKETING\"}"
        prop :id, ::T.nilable(::String)
        prop :status, ::T.nilable(::String)
        prop :category, ::T.nilable(::CloudWaba::Models::Enums::Templates::Category)
        prop :language, ::T.nilable(::String)
        prop :name, ::T.nilable(::String)

        sig { params(template_hash: ::T::Hash[::T.untyped, ::T.untyped]).returns(::CloudWaba::Models::Templates::Response) }
        def self.parse(template_hash:)
          category = ::CloudWaba::Models::Enums::Templates::Category.try_deserialize(template_hash["category"])

          self.new(
            id: template_hash["id"],
            status: template_hash["status"],
            category: category,
            language: template_hash["language"],
            name: template_hash["name"]
          )
        end
      end
    end
  end
end

Version data entries

8 entries across 8 versions & 1 rubygems

Version Path
cloud-waba-ruby-client-0.0.9 lib/cloud_waba/models/templates/response.rb
cloud-waba-ruby-client-0.0.8 lib/cloud_waba/models/templates/response.rb
cloud-waba-ruby-client-0.0.7 lib/cloud_waba/models/templates/response.rb
cloud-waba-ruby-client-0.0.6 lib/cloud_waba/models/templates/response.rb
cloud-waba-ruby-client-0.0.5 lib/cloud_waba/models/templates/response.rb
cloud-waba-ruby-client-0.0.3 lib/cloud_waba/models/templates/response.rb
cloud-waba-ruby-client-0.0.2 lib/cloud_waba/models/templates/response.rb
cloud-waba-ruby-client-0.0.1 lib/cloud_waba/models/templates/response.rb