/**
 * Auto-generated schema from XSD
 * 
 * DO NOT EDIT - Generated by ts-xsd codegen
 * Source: abapgit/prog.xsd
 */

export default {
  $xmlns: {
    xs: "http://www.w3.org/2001/XMLSchema",
    asx: "http://www.sap.com/abapxml",
  },
  elementFormDefault: "unqualified",
  element: [
    {
      name: "abapGit",
      complexType: {
        sequence: {
          element: [
            {
              name: "abap",
              type: "ProgAbapType",
            },
          ],
        },
        attribute: [
          {
            name: "version",
            type: "xs:string",
            use: "required",
          },
          {
            name: "serializer",
            type: "xs:string",
            use: "required",
          },
          {
            name: "serializer_version",
            type: "xs:string",
            use: "required",
          },
        ],
      },
    },
    {
      name: "Schema",
      abstract: true,
    },
  ],
  complexType: [
    {
      name: "ProgValuesType",
      all: {
        element: [
          {
            name: "PROGDIR",
            type: "ProgdirType",
            minOccurs: "0",
          },
          {
            name: "TPOOL",
            type: "TpoolType",
            minOccurs: "0",
          },
        ],
      },
    },
    {
      name: "ProgAbapType",
      sequence: {
        element: [
          {
            name: "values",
            type: "ProgValuesType",
          },
        ],
      },
      attribute: [
        {
          name: "version",
          type: "xs:string",
          "default": "1.0",
        },
      ],
    },
    {
      name: "AbapValuesType",
      sequence: {
        element: [
          {
            ref: "asx:Schema",
            minOccurs: "0",
            maxOccurs: "unbounded",
          },
        ],
      },
    },
    {
      name: "AbapType",
      sequence: {
        element: [
          {
            ref: "asx:values",
          },
        ],
      },
      attribute: [
        {
          name: "version",
          type: "xs:string",
          "default": "1.0",
        },
      ],
    },
    {
      name: "ProgdirType",
      all: {
        element: [
          {
            name: "NAME",
            type: "xs:string",
          },
          {
            name: "STATE",
            type: "xs:string",
            minOccurs: "0",
          },
          {
            name: "SUBC",
            type: "xs:string",
            minOccurs: "0",
          },
          {
            name: "FIXPT",
            type: "xs:string",
            minOccurs: "0",
          },
          {
            name: "UNICODE",
            type: "xs:string",
            minOccurs: "0",
          },
          {
            name: "DTEFUNC",
            type: "xs:string",
            minOccurs: "0",
          },
          {
            name: "RLOAD",
            type: "xs:string",
            minOccurs: "0",
          },
          {
            name: "UCCHECK",
            type: "xs:string",
            minOccurs: "0",
          },
          {
            name: "ABAP_LANGUAGE_VERSION",
            type: "xs:string",
            minOccurs: "0",
          },
        ],
      },
    },
    {
      name: "TpoolItemType",
      all: {
        element: [
          {
            name: "ID",
            type: "xs:string",
          },
          {
            name: "ENTRY",
            type: "xs:string",
            minOccurs: "0",
          },
          {
            name: "LENGTH",
            type: "xs:string",
            minOccurs: "0",
          },
        ],
      },
    },
    {
      name: "TpoolType",
      sequence: {
        element: [
          {
            name: "item",
            type: "TpoolItemType",
            minOccurs: "0",
            maxOccurs: "unbounded",
          },
        ],
      },
    },
  ],
} as const;
