line_messaging_api/models/carousel_template.rs
1/*
2* Copyright (C) 2016 LINE Corp.
3*
4* Licensed under the Apache License, Version 2.0 (the "License");
5* you may not use this file except in compliance with the License.
6* You may obtain a copy of the License at
7*
8* http://www.apache.org/licenses/LICENSE-2.0
9*
10* Unless required by applicable law or agreed to in writing, software
11* distributed under the License is distributed on an "AS IS" BASIS,
12* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13* See the License for the specific language governing permissions and
14* limitations under the License.
15*/
16
17/*
18 * LINE Messaging API
19 *
20 * This document describes LINE Messaging API.
21 *
22 * The version of the OpenAPI document: 0.0.3
23 *
24 * Generated by: https://openapi-generator.tech
25 */
26
27#[derive(Clone, Debug, PartialEq, Serialize, Deserialize)]
28pub struct CarouselTemplate {
29 #[serde(rename = "type")]
30 pub r#type: String,
31 #[serde(rename = "columns")]
32 pub columns: Vec<crate::models::CarouselColumn>,
33 #[serde(rename = "imageAspectRatio", skip_serializing_if = "Option::is_none")]
34 pub image_aspect_ratio: Option<String>,
35 #[serde(rename = "imageSize", skip_serializing_if = "Option::is_none")]
36 pub image_size: Option<String>,
37}
38
39impl CarouselTemplate {
40 pub fn new(r#type: String, columns: Vec<crate::models::CarouselColumn>) -> CarouselTemplate {
41 CarouselTemplate {
42 r#type,
43 columns,
44 image_aspect_ratio: None,
45 image_size: None,
46 }
47 }
48}