import * as z from "zod";
import { OpenEnum } from "../../types/enums.js";
import { ContentLanguageEnum, ContentLanguageEnum$Outbound } from "./contentlanguageenum.js";
import { CreateCategoriesApiModel, CreateCategoriesApiModel$Outbound } from "./createcategoriesapimodel.js";
export declare enum LmsCreateContentRequestDto2 {
    True = "true",
    False = "false"
}
/**
 * Whether the content is active and available for users.
 */
export type LmsCreateContentRequestDtoActive = boolean | LmsCreateContentRequestDto2;
export type LmsCreateContentRequestDto4 = {};
export type LmsCreateContentRequestDtoSourceValue = LmsCreateContentRequestDto4 | string | number | boolean | Array<any>;
export declare enum LmsCreateContentRequestDtoValue {
    Automatic = "automatic",
    Browser = "browser"
}
export type LmsCreateContentRequestDtoValueOpen = OpenEnum<typeof LmsCreateContentRequestDtoValue>;
/**
 * The content launch method associated with this content
 */
export type LmsCreateContentRequestDtoContentLaunchMethod = {
    sourceValue?: LmsCreateContentRequestDto4 | string | number | boolean | Array<any> | null | undefined;
    value?: LmsCreateContentRequestDtoValueOpen | null | undefined;
};
export type LmsCreateContentRequestDtoSchemas4 = {};
export type LmsCreateContentRequestDtoSchemasSourceValue = LmsCreateContentRequestDtoSchemas4 | string | number | boolean | Array<any>;
export declare enum LmsCreateContentRequestDtoSchemasValue {
    Video = "video",
    Quiz = "quiz",
    Document = "document"
}
export type LmsCreateContentRequestDtoSchemasValueOpen = OpenEnum<typeof LmsCreateContentRequestDtoSchemasValue>;
/**
 * The type of content
 */
export type LmsCreateContentRequestDtoContentType = {
    sourceValue?: LmsCreateContentRequestDtoSchemas4 | string | number | boolean | Array<any> | null | undefined;
    value?: LmsCreateContentRequestDtoSchemasValueOpen | null | undefined;
};
export type LmsCreateContentRequestDto = {
    /**
     * Whether the content is active and available for users.
     */
    active?: boolean | LmsCreateContentRequestDto2 | null | undefined;
    /**
     * The categories associated with this content
     */
    categories?: Array<CreateCategoriesApiModel> | null | undefined;
    /**
     * The content launch method associated with this content
     */
    contentLaunchMethod?: LmsCreateContentRequestDtoContentLaunchMethod | null | undefined;
    /**
     * The type of content
     */
    contentType?: LmsCreateContentRequestDtoContentType | null | undefined;
    /**
     * The external URL of the content
     */
    contentUrl?: string | null | undefined;
    /**
     * The parent IDs associated with this content
     */
    courseIds?: Array<string> | null | undefined;
    /**
     * The URL of the thumbnail image associated with the content.
     */
    coverUrl?: string | null | undefined;
    /**
     * The description of the content
     */
    description?: string | null | undefined;
    /**
     * The duration of the content following the ISO8601 standard. If duration_unit is applicable we will derive this from the smallest unit given in the duration string or the minimum unit accepted by the provider.
     */
    duration?: string | null | undefined;
    /**
     * The external ID associated with this content
     */
    externalReference?: string | null | undefined;
    /**
     * The languages associated with this content
     */
    languages?: Array<ContentLanguageEnum> | null | undefined;
    /**
     * The order of the individual content within a content grouping. This is not applicable for pushing individual content.
     */
    order?: number | null | undefined;
    /**
     * The title of the content
     */
    title?: string | null | undefined;
    /**
     * Custom Unified Fields configured in your StackOne project
     */
    unifiedCustomFields?: {
        [k: string]: any;
    } | null | undefined;
};
/** @internal */
export declare const LmsCreateContentRequestDto2$inboundSchema: z.ZodNativeEnum<typeof LmsCreateContentRequestDto2>;
/** @internal */
export declare const LmsCreateContentRequestDto2$outboundSchema: z.ZodNativeEnum<typeof LmsCreateContentRequestDto2>;
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
export declare namespace LmsCreateContentRequestDto2$ {
    /** @deprecated use `LmsCreateContentRequestDto2$inboundSchema` instead. */
    const inboundSchema: z.ZodNativeEnum<typeof LmsCreateContentRequestDto2>;
    /** @deprecated use `LmsCreateContentRequestDto2$outboundSchema` instead. */
    const outboundSchema: z.ZodNativeEnum<typeof LmsCreateContentRequestDto2>;
}
/** @internal */
export declare const LmsCreateContentRequestDtoActive$inboundSchema: z.ZodType<LmsCreateContentRequestDtoActive, z.ZodTypeDef, unknown>;
/** @internal */
export type LmsCreateContentRequestDtoActive$Outbound = boolean | string;
/** @internal */
export declare const LmsCreateContentRequestDtoActive$outboundSchema: z.ZodType<LmsCreateContentRequestDtoActive$Outbound, z.ZodTypeDef, LmsCreateContentRequestDtoActive>;
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
export declare namespace LmsCreateContentRequestDtoActive$ {
    /** @deprecated use `LmsCreateContentRequestDtoActive$inboundSchema` instead. */
    const inboundSchema: z.ZodType<LmsCreateContentRequestDtoActive, z.ZodTypeDef, unknown>;
    /** @deprecated use `LmsCreateContentRequestDtoActive$outboundSchema` instead. */
    const outboundSchema: z.ZodType<LmsCreateContentRequestDtoActive$Outbound, z.ZodTypeDef, LmsCreateContentRequestDtoActive>;
    /** @deprecated use `LmsCreateContentRequestDtoActive$Outbound` instead. */
    type Outbound = LmsCreateContentRequestDtoActive$Outbound;
}
/** @internal */
export declare const LmsCreateContentRequestDto4$inboundSchema: z.ZodType<LmsCreateContentRequestDto4, z.ZodTypeDef, unknown>;
/** @internal */
export type LmsCreateContentRequestDto4$Outbound = {};
/** @internal */
export declare const LmsCreateContentRequestDto4$outboundSchema: z.ZodType<LmsCreateContentRequestDto4$Outbound, z.ZodTypeDef, LmsCreateContentRequestDto4>;
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
export declare namespace LmsCreateContentRequestDto4$ {
    /** @deprecated use `LmsCreateContentRequestDto4$inboundSchema` instead. */
    const inboundSchema: z.ZodType<LmsCreateContentRequestDto4, z.ZodTypeDef, unknown>;
    /** @deprecated use `LmsCreateContentRequestDto4$outboundSchema` instead. */
    const outboundSchema: z.ZodType<LmsCreateContentRequestDto4$Outbound, z.ZodTypeDef, LmsCreateContentRequestDto4>;
    /** @deprecated use `LmsCreateContentRequestDto4$Outbound` instead. */
    type Outbound = LmsCreateContentRequestDto4$Outbound;
}
/** @internal */
export declare const LmsCreateContentRequestDtoSourceValue$inboundSchema: z.ZodType<LmsCreateContentRequestDtoSourceValue, z.ZodTypeDef, unknown>;
/** @internal */
export type LmsCreateContentRequestDtoSourceValue$Outbound = LmsCreateContentRequestDto4$Outbound | string | number | boolean | Array<any>;
/** @internal */
export declare const LmsCreateContentRequestDtoSourceValue$outboundSchema: z.ZodType<LmsCreateContentRequestDtoSourceValue$Outbound, z.ZodTypeDef, LmsCreateContentRequestDtoSourceValue>;
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
export declare namespace LmsCreateContentRequestDtoSourceValue$ {
    /** @deprecated use `LmsCreateContentRequestDtoSourceValue$inboundSchema` instead. */
    const inboundSchema: z.ZodType<LmsCreateContentRequestDtoSourceValue, z.ZodTypeDef, unknown>;
    /** @deprecated use `LmsCreateContentRequestDtoSourceValue$outboundSchema` instead. */
    const outboundSchema: z.ZodType<LmsCreateContentRequestDtoSourceValue$Outbound, z.ZodTypeDef, LmsCreateContentRequestDtoSourceValue>;
    /** @deprecated use `LmsCreateContentRequestDtoSourceValue$Outbound` instead. */
    type Outbound = LmsCreateContentRequestDtoSourceValue$Outbound;
}
/** @internal */
export declare const LmsCreateContentRequestDtoValue$inboundSchema: z.ZodType<LmsCreateContentRequestDtoValueOpen, z.ZodTypeDef, unknown>;
/** @internal */
export declare const LmsCreateContentRequestDtoValue$outboundSchema: z.ZodType<LmsCreateContentRequestDtoValueOpen, z.ZodTypeDef, LmsCreateContentRequestDtoValueOpen>;
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
export declare namespace LmsCreateContentRequestDtoValue$ {
    /** @deprecated use `LmsCreateContentRequestDtoValue$inboundSchema` instead. */
    const inboundSchema: z.ZodType<LmsCreateContentRequestDtoValueOpen, z.ZodTypeDef, unknown>;
    /** @deprecated use `LmsCreateContentRequestDtoValue$outboundSchema` instead. */
    const outboundSchema: z.ZodType<LmsCreateContentRequestDtoValueOpen, z.ZodTypeDef, LmsCreateContentRequestDtoValueOpen>;
}
/** @internal */
export declare const LmsCreateContentRequestDtoContentLaunchMethod$inboundSchema: z.ZodType<LmsCreateContentRequestDtoContentLaunchMethod, z.ZodTypeDef, unknown>;
/** @internal */
export type LmsCreateContentRequestDtoContentLaunchMethod$Outbound = {
    source_value?: LmsCreateContentRequestDto4$Outbound | string | number | boolean | Array<any> | null | undefined;
    value?: string | null | undefined;
};
/** @internal */
export declare const LmsCreateContentRequestDtoContentLaunchMethod$outboundSchema: z.ZodType<LmsCreateContentRequestDtoContentLaunchMethod$Outbound, z.ZodTypeDef, LmsCreateContentRequestDtoContentLaunchMethod>;
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
export declare namespace LmsCreateContentRequestDtoContentLaunchMethod$ {
    /** @deprecated use `LmsCreateContentRequestDtoContentLaunchMethod$inboundSchema` instead. */
    const inboundSchema: z.ZodType<LmsCreateContentRequestDtoContentLaunchMethod, z.ZodTypeDef, unknown>;
    /** @deprecated use `LmsCreateContentRequestDtoContentLaunchMethod$outboundSchema` instead. */
    const outboundSchema: z.ZodType<LmsCreateContentRequestDtoContentLaunchMethod$Outbound, z.ZodTypeDef, LmsCreateContentRequestDtoContentLaunchMethod>;
    /** @deprecated use `LmsCreateContentRequestDtoContentLaunchMethod$Outbound` instead. */
    type Outbound = LmsCreateContentRequestDtoContentLaunchMethod$Outbound;
}
/** @internal */
export declare const LmsCreateContentRequestDtoSchemas4$inboundSchema: z.ZodType<LmsCreateContentRequestDtoSchemas4, z.ZodTypeDef, unknown>;
/** @internal */
export type LmsCreateContentRequestDtoSchemas4$Outbound = {};
/** @internal */
export declare const LmsCreateContentRequestDtoSchemas4$outboundSchema: z.ZodType<LmsCreateContentRequestDtoSchemas4$Outbound, z.ZodTypeDef, LmsCreateContentRequestDtoSchemas4>;
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
export declare namespace LmsCreateContentRequestDtoSchemas4$ {
    /** @deprecated use `LmsCreateContentRequestDtoSchemas4$inboundSchema` instead. */
    const inboundSchema: z.ZodType<LmsCreateContentRequestDtoSchemas4, z.ZodTypeDef, unknown>;
    /** @deprecated use `LmsCreateContentRequestDtoSchemas4$outboundSchema` instead. */
    const outboundSchema: z.ZodType<LmsCreateContentRequestDtoSchemas4$Outbound, z.ZodTypeDef, LmsCreateContentRequestDtoSchemas4>;
    /** @deprecated use `LmsCreateContentRequestDtoSchemas4$Outbound` instead. */
    type Outbound = LmsCreateContentRequestDtoSchemas4$Outbound;
}
/** @internal */
export declare const LmsCreateContentRequestDtoSchemasSourceValue$inboundSchema: z.ZodType<LmsCreateContentRequestDtoSchemasSourceValue, z.ZodTypeDef, unknown>;
/** @internal */
export type LmsCreateContentRequestDtoSchemasSourceValue$Outbound = LmsCreateContentRequestDtoSchemas4$Outbound | string | number | boolean | Array<any>;
/** @internal */
export declare const LmsCreateContentRequestDtoSchemasSourceValue$outboundSchema: z.ZodType<LmsCreateContentRequestDtoSchemasSourceValue$Outbound, z.ZodTypeDef, LmsCreateContentRequestDtoSchemasSourceValue>;
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
export declare namespace LmsCreateContentRequestDtoSchemasSourceValue$ {
    /** @deprecated use `LmsCreateContentRequestDtoSchemasSourceValue$inboundSchema` instead. */
    const inboundSchema: z.ZodType<LmsCreateContentRequestDtoSchemasSourceValue, z.ZodTypeDef, unknown>;
    /** @deprecated use `LmsCreateContentRequestDtoSchemasSourceValue$outboundSchema` instead. */
    const outboundSchema: z.ZodType<LmsCreateContentRequestDtoSchemasSourceValue$Outbound, z.ZodTypeDef, LmsCreateContentRequestDtoSchemasSourceValue>;
    /** @deprecated use `LmsCreateContentRequestDtoSchemasSourceValue$Outbound` instead. */
    type Outbound = LmsCreateContentRequestDtoSchemasSourceValue$Outbound;
}
/** @internal */
export declare const LmsCreateContentRequestDtoSchemasValue$inboundSchema: z.ZodType<LmsCreateContentRequestDtoSchemasValueOpen, z.ZodTypeDef, unknown>;
/** @internal */
export declare const LmsCreateContentRequestDtoSchemasValue$outboundSchema: z.ZodType<LmsCreateContentRequestDtoSchemasValueOpen, z.ZodTypeDef, LmsCreateContentRequestDtoSchemasValueOpen>;
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
export declare namespace LmsCreateContentRequestDtoSchemasValue$ {
    /** @deprecated use `LmsCreateContentRequestDtoSchemasValue$inboundSchema` instead. */
    const inboundSchema: z.ZodType<LmsCreateContentRequestDtoSchemasValueOpen, z.ZodTypeDef, unknown>;
    /** @deprecated use `LmsCreateContentRequestDtoSchemasValue$outboundSchema` instead. */
    const outboundSchema: z.ZodType<LmsCreateContentRequestDtoSchemasValueOpen, z.ZodTypeDef, LmsCreateContentRequestDtoSchemasValueOpen>;
}
/** @internal */
export declare const LmsCreateContentRequestDtoContentType$inboundSchema: z.ZodType<LmsCreateContentRequestDtoContentType, z.ZodTypeDef, unknown>;
/** @internal */
export type LmsCreateContentRequestDtoContentType$Outbound = {
    source_value?: LmsCreateContentRequestDtoSchemas4$Outbound | string | number | boolean | Array<any> | null | undefined;
    value?: string | null | undefined;
};
/** @internal */
export declare const LmsCreateContentRequestDtoContentType$outboundSchema: z.ZodType<LmsCreateContentRequestDtoContentType$Outbound, z.ZodTypeDef, LmsCreateContentRequestDtoContentType>;
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
export declare namespace LmsCreateContentRequestDtoContentType$ {
    /** @deprecated use `LmsCreateContentRequestDtoContentType$inboundSchema` instead. */
    const inboundSchema: z.ZodType<LmsCreateContentRequestDtoContentType, z.ZodTypeDef, unknown>;
    /** @deprecated use `LmsCreateContentRequestDtoContentType$outboundSchema` instead. */
    const outboundSchema: z.ZodType<LmsCreateContentRequestDtoContentType$Outbound, z.ZodTypeDef, LmsCreateContentRequestDtoContentType>;
    /** @deprecated use `LmsCreateContentRequestDtoContentType$Outbound` instead. */
    type Outbound = LmsCreateContentRequestDtoContentType$Outbound;
}
/** @internal */
export declare const LmsCreateContentRequestDto$inboundSchema: z.ZodType<LmsCreateContentRequestDto, z.ZodTypeDef, unknown>;
/** @internal */
export type LmsCreateContentRequestDto$Outbound = {
    active?: boolean | string | null | undefined;
    categories?: Array<CreateCategoriesApiModel$Outbound> | null | undefined;
    content_launch_method?: LmsCreateContentRequestDtoContentLaunchMethod$Outbound | null | undefined;
    content_type?: LmsCreateContentRequestDtoContentType$Outbound | null | undefined;
    content_url?: string | null | undefined;
    course_ids?: Array<string> | null | undefined;
    cover_url?: string | null | undefined;
    description?: string | null | undefined;
    duration?: string | null | undefined;
    external_reference?: string | null | undefined;
    languages?: Array<ContentLanguageEnum$Outbound> | null | undefined;
    order?: number | null | undefined;
    title?: string | null | undefined;
    unified_custom_fields?: {
        [k: string]: any;
    } | null | undefined;
};
/** @internal */
export declare const LmsCreateContentRequestDto$outboundSchema: z.ZodType<LmsCreateContentRequestDto$Outbound, z.ZodTypeDef, LmsCreateContentRequestDto>;
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
export declare namespace LmsCreateContentRequestDto$ {
    /** @deprecated use `LmsCreateContentRequestDto$inboundSchema` instead. */
    const inboundSchema: z.ZodType<LmsCreateContentRequestDto, z.ZodTypeDef, unknown>;
    /** @deprecated use `LmsCreateContentRequestDto$outboundSchema` instead. */
    const outboundSchema: z.ZodType<LmsCreateContentRequestDto$Outbound, z.ZodTypeDef, LmsCreateContentRequestDto>;
    /** @deprecated use `LmsCreateContentRequestDto$Outbound` instead. */
    type Outbound = LmsCreateContentRequestDto$Outbound;
}
//# sourceMappingURL=lmscreatecontentrequestdto.d.ts.map