@kontent-ai/management-sdk
Version:
Official Kontent.ai management SDK
70 lines (61 loc) • 2.01 kB
text/typescript
import { SharedModels } from '../shared/shared-models';
import { PreviewContracts } from '../../contracts';
export namespace PreviewModels {
export interface IPreviewSpace {
id: string;
}
export interface IPreviewContentType {
id: string;
}
export interface IPreviewUrlPattern {
space: IPreviewSpace | null;
urlPattern: string;
}
export interface IPreviewUrlPatterns {
contentType: IPreviewContentType;
urlPatterns: IPreviewUrlPattern[];
}
export interface IPreviewSpaceDomain {
space: IPreviewSpace;
domain: string;
}
export class PreviewConfiguration
implements SharedModels.IBaseModel<PreviewContracts.IPreviewConfigurationContract>
{
public spaceDomains: IPreviewSpaceDomain[];
public previewUrlPatterns: IPreviewUrlPatterns[];
public _raw: PreviewContracts.IPreviewConfigurationContract;
constructor(data: {
spaceDomains: IPreviewSpaceDomain[];
previewUrlPatterns: IPreviewUrlPatterns[];
_raw: PreviewContracts.IPreviewConfigurationContract;
}) {
this.spaceDomains = data.spaceDomains;
this.previewUrlPatterns = data.previewUrlPatterns;
this._raw = data._raw;
}
}
export interface IModifyPreviewConfigurationData {
space_domains: {
space: {
id?: string;
codename?: string;
};
domain: string;
}[];
preview_url_patterns: {
content_type: {
id?: string;
codename?: string;
external_id?: string;
};
url_patterns: {
space: null | {
id?: string;
codename?: string;
};
url_pattern: string;
}[];
}[];
}
}