import { SharedContracts, SpaceContracts } from '../../contracts'; import { SharedModels } from '../shared/shared-models'; export declare 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 { id: string; name: string; codename: string; webSpotlightRootItem?: SharedModels.ReferenceObject; collections?: SharedModels.ReferenceObject[]; _raw: SpaceContracts.ISpaceContract; constructor(data: { id: string; name: string; codename: string; webSpotlightRootItem?: SharedModels.ReferenceObject; collections?: SharedModels.ReferenceObject[]; _raw: SpaceContracts.ISpaceContract; }); } export {}; }