openapi-github 0.1.0

OpenAPI specs from https://github.com/github/rest-api-description with the 'x-octokit' extension required by the Octokit SDKs
Documentation
/*
 * GitHub's official OpenAPI spec + Octokit extension
 *
 * OpenAPI specs from https://github.com/github/rest-api-description with the 'x-octokit' extension required by the Octokit SDKs
 *
 * The version of the OpenAPI document: 16.6.0
 * 
 * Generated by: https://openapi-generator.tech
 */

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

#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
pub struct WebhookPackagePublishedPackagePackageVersionNpmMetadata {
    #[serde(rename = "name", skip_serializing_if = "Option::is_none")]
    pub name: Option<String>,
    #[serde(rename = "version", skip_serializing_if = "Option::is_none")]
    pub version: Option<String>,
    #[serde(rename = "npm_user", skip_serializing_if = "Option::is_none")]
    pub npm_user: Option<String>,
    #[serde(rename = "author", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
    pub author: Option<Option<serde_json::Value>>,
    #[serde(rename = "bugs", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
    pub bugs: Option<Option<serde_json::Value>>,
    #[serde(rename = "dependencies", skip_serializing_if = "Option::is_none")]
    pub dependencies: Option<serde_json::Value>,
    #[serde(rename = "dev_dependencies", skip_serializing_if = "Option::is_none")]
    pub dev_dependencies: Option<serde_json::Value>,
    #[serde(rename = "peer_dependencies", skip_serializing_if = "Option::is_none")]
    pub peer_dependencies: Option<serde_json::Value>,
    #[serde(rename = "optional_dependencies", skip_serializing_if = "Option::is_none")]
    pub optional_dependencies: Option<serde_json::Value>,
    #[serde(rename = "description", skip_serializing_if = "Option::is_none")]
    pub description: Option<String>,
    #[serde(rename = "dist", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
    pub dist: Option<Option<serde_json::Value>>,
    #[serde(rename = "git_head", skip_serializing_if = "Option::is_none")]
    pub git_head: Option<String>,
    #[serde(rename = "homepage", skip_serializing_if = "Option::is_none")]
    pub homepage: Option<String>,
    #[serde(rename = "license", skip_serializing_if = "Option::is_none")]
    pub license: Option<String>,
    #[serde(rename = "main", skip_serializing_if = "Option::is_none")]
    pub main: Option<String>,
    #[serde(rename = "repository", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
    pub repository: Option<Option<serde_json::Value>>,
    #[serde(rename = "scripts", skip_serializing_if = "Option::is_none")]
    pub scripts: Option<serde_json::Value>,
    #[serde(rename = "id", skip_serializing_if = "Option::is_none")]
    pub id: Option<String>,
    #[serde(rename = "node_version", skip_serializing_if = "Option::is_none")]
    pub node_version: Option<String>,
    #[serde(rename = "npm_version", skip_serializing_if = "Option::is_none")]
    pub npm_version: Option<String>,
    #[serde(rename = "has_shrinkwrap", skip_serializing_if = "Option::is_none")]
    pub has_shrinkwrap: Option<bool>,
    #[serde(rename = "maintainers", skip_serializing_if = "Option::is_none")]
    pub maintainers: Option<Vec<serde_json::Value>>,
    #[serde(rename = "contributors", skip_serializing_if = "Option::is_none")]
    pub contributors: Option<Vec<serde_json::Value>>,
    #[serde(rename = "engines", skip_serializing_if = "Option::is_none")]
    pub engines: Option<serde_json::Value>,
    #[serde(rename = "keywords", skip_serializing_if = "Option::is_none")]
    pub keywords: Option<Vec<String>>,
    #[serde(rename = "files", skip_serializing_if = "Option::is_none")]
    pub files: Option<Vec<String>>,
    #[serde(rename = "bin", skip_serializing_if = "Option::is_none")]
    pub bin: Option<serde_json::Value>,
    #[serde(rename = "man", skip_serializing_if = "Option::is_none")]
    pub man: Option<serde_json::Value>,
    #[serde(rename = "directories", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
    pub directories: Option<Option<serde_json::Value>>,
    #[serde(rename = "os", skip_serializing_if = "Option::is_none")]
    pub os: Option<Vec<String>>,
    #[serde(rename = "cpu", skip_serializing_if = "Option::is_none")]
    pub cpu: Option<Vec<String>>,
    #[serde(rename = "readme", skip_serializing_if = "Option::is_none")]
    pub readme: Option<String>,
    #[serde(rename = "installation_command", skip_serializing_if = "Option::is_none")]
    pub installation_command: Option<String>,
    #[serde(rename = "release_id", skip_serializing_if = "Option::is_none")]
    pub release_id: Option<i32>,
    #[serde(rename = "commit_oid", skip_serializing_if = "Option::is_none")]
    pub commit_oid: Option<String>,
    #[serde(rename = "published_via_actions", skip_serializing_if = "Option::is_none")]
    pub published_via_actions: Option<bool>,
    #[serde(rename = "deleted_by_id", skip_serializing_if = "Option::is_none")]
    pub deleted_by_id: Option<i32>,
}

impl WebhookPackagePublishedPackagePackageVersionNpmMetadata {
    pub fn new() -> WebhookPackagePublishedPackagePackageVersionNpmMetadata {
        WebhookPackagePublishedPackagePackageVersionNpmMetadata {
            name: None,
            version: None,
            npm_user: None,
            author: None,
            bugs: None,
            dependencies: None,
            dev_dependencies: None,
            peer_dependencies: None,
            optional_dependencies: None,
            description: None,
            dist: None,
            git_head: None,
            homepage: None,
            license: None,
            main: None,
            repository: None,
            scripts: None,
            id: None,
            node_version: None,
            npm_version: None,
            has_shrinkwrap: None,
            maintainers: None,
            contributors: None,
            engines: None,
            keywords: None,
            files: None,
            bin: None,
            man: None,
            directories: None,
            os: None,
            cpu: None,
            readme: None,
            installation_command: None,
            release_id: None,
            commit_oid: None,
            published_via_actions: None,
            deleted_by_id: None,
        }
    }
}