/**
 * Dusky API
 * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
 *
 * The version of the OpenAPI document: v1
 *
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */

import { V1Capabilities } from './v1Capabilities';
import { V1SELinuxOptions } from './v1SELinuxOptions';
import { V1WindowsSecurityContextOptions } from './v1WindowsSecurityContextOptions';

export class V1SecurityContext {
    'allowPrivilegeEscalation'?: boolean | null;
    'capabilities'?: V1Capabilities;
    'privileged'?: boolean | null;
    'procMount'?: string;
    'readOnlyRootFilesystem'?: boolean | null;
    'runAsGroup'?: number | null;
    'runAsNonRoot'?: boolean | null;
    'runAsUser'?: number | null;
    'seLinuxOptions'?: V1SELinuxOptions;
    'windowsOptions'?: V1WindowsSecurityContextOptions;

    static discriminator: string | undefined = undefined;

    static attributeTypeMap: Array<{name: string, baseName: string, type: string}> = [
        {
            "name": "allowPrivilegeEscalation",
            "baseName": "allowPrivilegeEscalation",
            "type": "boolean"
        },
        {
            "name": "capabilities",
            "baseName": "capabilities",
            "type": "V1Capabilities"
        },
        {
            "name": "privileged",
            "baseName": "privileged",
            "type": "boolean"
        },
        {
            "name": "procMount",
            "baseName": "procMount",
            "type": "string"
        },
        {
            "name": "readOnlyRootFilesystem",
            "baseName": "readOnlyRootFilesystem",
            "type": "boolean"
        },
        {
            "name": "runAsGroup",
            "baseName": "runAsGroup",
            "type": "number"
        },
        {
            "name": "runAsNonRoot",
            "baseName": "runAsNonRoot",
            "type": "boolean"
        },
        {
            "name": "runAsUser",
            "baseName": "runAsUser",
            "type": "number"
        },
        {
            "name": "seLinuxOptions",
            "baseName": "seLinuxOptions",
            "type": "V1SELinuxOptions"
        },
        {
            "name": "windowsOptions",
            "baseName": "windowsOptions",
            "type": "V1WindowsSecurityContextOptions"
        }    ];

    static getAttributeTypeMap() {
        return V1SecurityContext.attributeTypeMap;
    }
}

