import { EnvironmentContracts } from '../../contracts'; export namespace EnvironmentModels { export class EnvironmentReportModel { constructor(public id: string, public name: string) {} } export class EnvironmentValidationVariantIssueModel { public readonly issue_type: EnvironmentContracts.EnvironmentValidationIssueType = 'variant_issue'; constructor( public item: EnvironmentVariantContentItemModel, public language: EnvironmentVariantLanguageModel, public issues: EnvironmentIssueModel[] ) {} } export class EnvironmentValidationTypeIssueModel { public readonly issue_type: EnvironmentContracts.EnvironmentValidationIssueType = 'type_issue'; constructor(public type: EnvironmentTypeModel, public issues: EnvironmentIssueModel[]) {} } export class EnvironmentInformationModel { constructor(public id: string, public name: string, public environment: string) {} } export class EnvironmentVariantContentItemModel { constructor(public id: string, public name: string, public codename: string) {} } export class EnvironmentVariantLanguageModel { constructor(public id: string, public name: string, public codename: string) {} } export class EnvironmentVariantElementModel { constructor(public id: string, public name: string, public codename: string) {} } export class EnvironmentTypeIssueModel { constructor(public type: EnvironmentTypeModel, public issues: EnvironmentIssueModel[]) {} } export class EnvironmentTypeModel { constructor(public id: string, public name: string, public codename: string) {} } export class EnvironmentIssueModel { constructor(public element: EnvironmentVariantElementModel, public messages: string[]) {} } export class EnvironmentVariantIssueModel { constructor( public item: EnvironmentVariantContentItemModel, public language: EnvironmentVariantLanguageModel, public issues: EnvironmentIssueModel[] ) {} } export class EnvironmentCloningStateModel { constructor(public cloningState: string) {} } export interface IModifyEnvironmentData { op: 'rename_environment'; value: string; } export class EnvironmentModel { constructor(public id: string, public name: string, public isProduction: boolean) {} } export interface ICloneEnvironmentData { name: string; roles_to_activate?: string[]; copy_data_options?: { content_items_assets?: boolean; content_item_version_history?: boolean; }; } export class CloneEnvironmentModel { constructor( public id: string, public managementApiKey: string, public deliveryPreviewApiKey: string, public securedDeliveryApiKey: string ) {} } export interface IMarkEnvironmentAsProductionData { enable_webhooks: boolean; } }