/**
 * This file was automatically generated by json-schema-to-typescript.
 * DO NOT MODIFY IT BY HAND. Instead, modify the source JSONSchema file,
 * and run json-schema-to-typescript to regenerate this file.
 */
export type WorkflowNameV1_0_0 = string;
export type NameV1_0_0 = string;
export type TitleV1_0_0 = string;
export type DescriptionV1_0_0 = string;
export type ColorV1_0_0 = string;
export type LiveV1_0_0 = boolean;
export type KeyV1_0_0 = string;
export type StepsV1_0_0 = WorkflowStepV1_0_0[];
/**
 * This interface was referenced by `EncryptedServiceMapV1_0_0`'s JSON-Schema definition
 * via the `patternProperty` "[0-9A-Za-z_-]+".
 *
 * This interface was referenced by `ProjectSchemaJSONV1_0_0`'s JSON-Schema
 * via the `definition` "encryptedServiceConfig".
 */
export type EncryptedServiceConfigV1_0_0 = EncryptedGenericServiceConfigV1_0_0 | EncryptedRESTServiceConfigV1_0_0 | EncryptedGraphQLServiceConfigV1_0_0;
export interface ProjectSchemaJSONV1_0_0 {
    $schema?: string;
    version: number;
    apiVersion: string;
    schemaVersion?: '1' | '1.0.0';
    projectId: string;
    author?: string;
    created?: number;
    updated?: number;
    deactivated?: number;
    defaultLocale: string;
    locales: string[];
    contentTypes: ContentTypeMapV1_0_0;
    workflows: WorkflowMapV1_0_0;
    dataKey?: string;
    services?: EncryptedServiceMapV1_0_0;
}
/**
 * This interface was referenced by `ProjectSchemaJSONV1_0_0`'s JSON-Schema
 * via the `definition` "contentTypeMap".
 */
export interface ContentTypeMapV1_0_0 {
    [k: string]: ContentTypeV1_0_0;
}
/**
 * This interface was referenced by `ContentTypeMapV1_0_0`'s JSON-Schema definition
 * via the `patternProperty` "[0-9A-Za-z_-]+".
 *
 * This interface was referenced by `ProjectSchemaJSONV1_0_0`'s JSON-Schema
 * via the `definition` "contentType".
 */
export interface ContentTypeV1_0_0 {
    name: string;
    title?: string;
    description?: string;
    single?: boolean;
    taxonomy?: boolean;
    workflow?: string;
    hidden?: boolean;
    schema: {
        type: 'object';
        properties: {
            [k: string]: ContentSchemaV1_0_0;
        };
        /**
         * This interface was referenced by `ContentSchemaV1_0_0`'s JSON-Schema
         * via the `definition` "stringArray".
         */
        required?: string[];
    };
    forms: FormsConfigV1_0_0;
    [k: string]: any;
}
export interface ContentSchemaV1_0_0 {
    $id?: string;
    $schema?: string;
    $ref?: string;
    $comment?: string;
    title?: string;
    description?: string;
    default?: any;
    readOnly?: boolean;
    examples?: any[];
    multipleOf?: number;
    maximum?: number;
    exclusiveMaximum?: number;
    minimum?: number;
    exclusiveMinimum?: number;
    /**
     * This interface was referenced by `ContentSchemaV1_0_0`'s JSON-Schema
     * via the `definition` "nonNegativeInteger".
     */
    maxLength?: number;
    /**
     * This interface was referenced by `ContentSchemaV1_0_0`'s JSON-Schema
     * via the `definition` "nonNegativeIntegerDefault0".
     */
    minLength?: number;
    pattern?: string;
    additionalItems?: ContentSchemaV1_0_0;
    items?: ContentSchemaV1_0_0;
    /**
     * This interface was referenced by `ContentSchemaV1_0_0`'s JSON-Schema
     * via the `definition` "nonNegativeInteger".
     */
    maxItems?: number;
    /**
     * This interface was referenced by `ContentSchemaV1_0_0`'s JSON-Schema
     * via the `definition` "nonNegativeIntegerDefault0".
     */
    minItems?: number;
    uniqueItems?: boolean;
    contains?: ContentSchemaV1_0_0;
    /**
     * This interface was referenced by `ContentSchemaV1_0_0`'s JSON-Schema
     * via the `definition` "nonNegativeInteger".
     */
    maxProperties?: number;
    /**
     * This interface was referenced by `ContentSchemaV1_0_0`'s JSON-Schema
     * via the `definition` "nonNegativeIntegerDefault0".
     */
    minProperties?: number;
    /**
     * This interface was referenced by `ContentSchemaV1_0_0`'s JSON-Schema
     * via the `definition` "stringArray".
     */
    required?: string[];
    additionalProperties?: ContentSchemaV1_0_0;
    definitions?: {
        [k: string]: ContentSchemaV1_0_0;
    };
    properties?: {
        [k: string]: ContentSchemaV1_0_0;
    };
    patternProperties?: {
        [k: string]: ContentSchemaV1_0_0;
    };
    dependencies?: {
        [k: string]: ContentSchemaV1_0_0 | string[];
    };
    propertyNames?: ContentSchemaV1_0_0;
    const?: any;
    enum?: any[];
    type?: ('array' | 'boolean' | 'integer' | 'null' | 'number' | 'object' | 'string') | ('array' | 'boolean' | 'integer' | 'null' | 'number' | 'object' | 'string')[];
    format?: string;
    contentMediaType?: string;
    contentEncoding?: string;
    if?: ContentSchemaV1_0_0;
    then?: ContentSchemaV1_0_0;
    else?: ContentSchemaV1_0_0;
    /**
     * This interface was referenced by `ContentSchemaV1_0_0`'s JSON-Schema
     * via the `definition` "schemaArray".
     */
    allOf?: ContentSchemaV1_0_0[];
    /**
     * This interface was referenced by `ContentSchemaV1_0_0`'s JSON-Schema
     * via the `definition` "schemaArray".
     */
    anyOf?: ContentSchemaV1_0_0[];
    /**
     * This interface was referenced by `ContentSchemaV1_0_0`'s JSON-Schema
     * via the `definition` "schemaArray".
     */
    oneOf?: ContentSchemaV1_0_0[];
    not?: ContentSchemaV1_0_0;
    relationship?: RelationshipV1_0_0;
    mutable?: boolean;
    syncLocaleStructure?: boolean;
    sensitive?: boolean;
    draftjs?: boolean;
    indexed?: boolean;
    l10n?: boolean;
    key?: string;
    '@workflow'?: string;
    [k: string]: any;
}
/**
 * This interface was referenced by `ContentSchemaV1_0_0`'s JSON-Schema
 * via the `definition` "relationship".
 */
export interface RelationshipV1_0_0 {
    contentTypeIds: string[];
    type?: string;
    relatedName?: string;
}
/**
 * This interface was referenced by `ProjectSchemaJSONV1_0_0`'s JSON-Schema
 * via the `definition` "formsConfig".
 */
export interface FormsConfigV1_0_0 {
    default: FormConfigV1_0_0;
    [k: string]: FormConfigV1_0_0;
}
/**
 * This interface was referenced by `FormsConfigV1_0_0`'s JSON-Schema definition
 * via the `patternProperty` "[0-9A-Za-z_-]+".
 *
 * This interface was referenced by `ProjectSchemaJSONV1_0_0`'s JSON-Schema
 * via the `definition` "formConfig".
 */
export interface FormConfigV1_0_0 {
    [k: string]: any;
}
/**
 * This interface was referenced by `ProjectSchemaJSONV1_0_0`'s JSON-Schema
 * via the `definition` "workflowMap".
 */
export interface WorkflowMapV1_0_0 {
    [k: string]: WorkflowV1_0_0;
}
/**
 * This interface was referenced by `WorkflowMapV1_0_0`'s JSON-Schema definition
 * via the `patternProperty` "[0-9A-Za-z_-]+".
 *
 * This interface was referenced by `ProjectSchemaJSONV1_0_0`'s JSON-Schema
 * via the `definition` "workflow".
 */
export interface WorkflowV1_0_0 {
    name: string;
    title: WorkflowNameV1_0_0;
    steps: StepsV1_0_0;
    [k: string]: any;
}
/**
 * This interface was referenced by `ProjectSchemaJSONV1_0_0`'s JSON-Schema
 * via the `definition` "workflowStep".
 */
export interface WorkflowStepV1_0_0 {
    name: NameV1_0_0;
    title: TitleV1_0_0;
    description?: DescriptionV1_0_0;
    color: ColorV1_0_0;
    live: LiveV1_0_0;
    key: KeyV1_0_0;
}
/**
 * This interface was referenced by `ProjectSchemaJSONV1_0_0`'s JSON-Schema
 * via the `definition` "encryptedServiceMap".
 */
export interface EncryptedServiceMapV1_0_0 {
    [k: string]: EncryptedServiceConfigV1_0_0;
}
/**
 * This interface was referenced by `ProjectSchemaJSONV1_0_0`'s JSON-Schema
 * via the `definition` "encryptedGenericServiceConfig".
 */
export interface EncryptedGenericServiceConfigV1_0_0 {
    auth?: string;
    webhookId?: string;
    params?: GenericServiceConfigParamsV1_0_0;
}
export interface GenericServiceConfigParamsV1_0_0 {
    /**
     * This interface was referenced by `GenericServiceConfigParamsV1_0_0`'s JSON-Schema definition
     * via the `patternProperty` "[a-zA-Z][a-zA-Z0-9]*".
     */
    [k: string]: string;
}
/**
 * This interface was referenced by `ProjectSchemaJSONV1_0_0`'s JSON-Schema
 * via the `definition` "encryptedRestServiceConfig".
 */
export interface EncryptedRESTServiceConfigV1_0_0 {
    auth?: string;
    webhookId?: string;
    params: RESTServiceConfigParamsV1_0_0;
}
export interface RESTServiceConfigParamsV1_0_0 {
    type: 'rest';
    endpoint: string;
    authType: string;
    /**
     * This interface was referenced by `RESTServiceConfigParamsV1_0_0`'s JSON-Schema definition
     * via the `patternProperty` "[a-zA-Z][a-zA-Z0-9]*".
     */
    [k: string]: string;
}
/**
 * This interface was referenced by `ProjectSchemaJSONV1_0_0`'s JSON-Schema
 * via the `definition` "encryptedGraphqlServiceConfig".
 */
export interface EncryptedGraphQLServiceConfigV1_0_0 {
    auth?: string;
    webhookId?: string;
    params: GraphQLServiceConfigParamsV1_0_0;
}
export interface GraphQLServiceConfigParamsV1_0_0 {
    type: 'graphql';
    namespace: string;
    endpoint: string;
    /**
     * This interface was referenced by `GraphQLServiceConfigParamsV1_0_0`'s JSON-Schema definition
     * via the `patternProperty` "[a-zA-Z][a-zA-Z0-9]*".
     */
    [k: string]: string;
}
