dodopayments_rust 2.2.2

Rust SDK for Dodo Payments API
Documentation
/*
 * public
 *
 * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
 *
 * The version of the OpenAPI document: 1.97.5
 * 
 * Generated by: https://openapi-generator.tech
 */

use crate::models;
use serde::{Deserialize, Serialize};

#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
pub struct LicenseKeyConfig {
    /// Optional message displayed when a customer activates the license key (≤ 2500 characters).
    #[serde(rename = "activation_message", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
    pub activation_message: Option<Option<String>>,
    /// Maximum activations allowed per issued license key. Omit for unlimited.
    #[serde(rename = "activations_limit", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
    pub activations_limit: Option<Option<i32>>,
    /// Validity duration of issued license keys. Provide both `duration_count` and `duration_interval` together for a fixed duration; omit both for non-expiring keys.
    #[serde(rename = "duration_count", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
    pub duration_count: Option<Option<i32>>,
    /// Unit of `duration_count`.
    #[serde(rename = "duration_interval", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
    pub duration_interval: Option<Option<models::TimeInterval>>,
}

impl LicenseKeyConfig {
    pub fn new() -> LicenseKeyConfig {
        LicenseKeyConfig {
            activation_message: None,
            activations_limit: None,
            duration_count: None,
            duration_interval: None,
        }
    }
}