@kontent-ai/management-sdk
Version:
Official Kontent.ai management SDK
48 lines (41 loc) • 1.63 kB
text/typescript
import { SharedContracts, SpaceContracts } from '../../contracts';
import { SharedModels } from '../shared/shared-models';
export namespace SpaceModels {
export type ModifySpaceOperation = 'replace';
type ModifySpaceProperties = {
property_name: "name" | "codename";
value: string;
} | {
property_name: "web_spotlight_root_item";
value: SharedContracts.IReferenceObjectContract;
}
| {
property_name: "collections";
value: SharedContracts.IReferenceObjectContract[];
}
export type IModifySpaceData = { op: ModifySpaceOperation } & ModifySpaceProperties;
export interface IAddSpaceData {
name: string;
codename?: string;
web_spotlight_root_item?: SharedContracts.IReferenceObjectContract;
collections?: SharedContracts.IReferenceObjectContract[];
}
export class Space implements SharedModels.IBaseModel<SpaceContracts.ISpaceContract> {
public id!: string;
public name!: string;
public codename!: string;
public webSpotlightRootItem?: SharedModels.ReferenceObject;
public collections?: SharedModels.ReferenceObject[];
public _raw!: SpaceContracts.ISpaceContract;
constructor(data: {
id: string;
name: string;
codename: string;
webSpotlightRootItem?: SharedModels.ReferenceObject;
collections?: SharedModels.ReferenceObject[];
_raw: SpaceContracts.ISpaceContract;
}) {
Object.assign(this, data);
}
}
}