import Base, { MaybeRaw } from "../../../Base"; import { High5SpaceInfo, CosmoSpace as ICosmoSpace, SpacePatchStorageDto, SpacePatchStorageValidationDto, SpaceUser, TrashPolicy } from "../../../interfaces/cosmo/space"; /** * @class Space * @extends Base * * @remarks * **Under development, breaking changes possible** * * Represents a Space resource in Cosmo, providing methods to interact with the Space API. */ export declare class CosmoSpace extends Base { protected getEndpoint(endpoint: string): string; /** * Create a new Space in the specified Organization. * @remarks * ** Under development, breaking changes possible** * @param orgName Name of the Organization * @param noAvatar Optional flag to create the Space without an avatar * @returns The created Space */ createSpace(orgName: string, spaceName: string, noAvatar?: boolean, raw?: { raw: R; }): Promise>; /** * List spaces of an Organization. * @remarks * ** Under development, breaking changes possible** * @param orgName Name of the Organization * @param limit Maximum number of Spaces to return * @param page Page number for pagination * @returns A list of Spaces in the Organization */ listSpaces(orgName: string, limit: number, page: number, raw?: { raw: R; }): Promise>; /** * Fetch a single space by its Name. * @remarks * ** Under development, breaking changes possible** * @param orgName Name of the Organization * @param spaceName Name of the Space to fetch * @returns The requested Space */ getSpace(orgName: string, spaceName: string, raw?: { raw: R; }): Promise>; /** * Delete a Space by it's Name. * @remarks * ** Under development, breaking changes possible** * @param orgName Name of the Organization * @param spaceName Name of the Space to delete * @returns 204 No Content on success */ deleteSpace(orgName: string, spaceName: string, raw?: { raw: R; }): Promise>; /** * Rename a Space. * @remarks * ** Under development, breaking changes possible** * @param orgName Name of the Organization * @param spaceName Name of the Space * @param newName New name for the Space * @returns The updated Space */ renameSpace(orgName: string, spaceName: string, newName: string, raw?: { raw: R; }): Promise>; /** * Link a high5 space to a cosmo space. * @remarks * ** Under development, breaking changes possible** * @param orgName Name of the Organization * @param spaceName Name of the Cosmo Space * @param high5SpaceInfo Information about the high5 space * @returns The updated Cosmo Space */ linkSpace(orgName: string, spaceName: string, high5SpaceInfo: High5SpaceInfo, raw?: { raw: R; }): Promise>; /** * Link a high5 space to a cosmo space. * @remarks * ** Under development, breaking changes possible** * @param orgName Name of the Organization * @param spaceName Name of the Cosmo Space * @param high5SpaceInfo Information about the high5 space * @returns The updated Cosmo Space */ unlinkSpace(orgName: string, spaceName: string, raw?: { raw: R; }): Promise>; /** * List all users with access to the given Space. * @param orgName Name of the Organization * @param spaceName Name of the Cosmo Space * @returns The SpaceUser array */ listSpaceUsers(orgName: string, spaceName: string, raw?: { raw: R; }): Promise>; /** * Updates the avatar of the specified Cosmo space * @param orgName Name of the organization * @param spaceName Name of the space * @param file Image as Javascript File * @returns Space details with updated avatar */ updateAvatar(orgName: string, spaceName: string, file: File, raw?: { raw: R; }): Promise>; /** * Permanently deletes all items in the trash of the specified Cosmo space * @param orgName Name of the organization * @param spaceName Name of the space * @returns 204 No Content on success */ emptyTrash(orgName: string, spaceName: string): Promise; /** * Updates the trashbin auto-delete policy for the specified Cosmo space. * @param orgName Name of the organization * @param spaceName Name of the space * @param policy Trash policy to apply. If enabled, items in the trash will be automatically deleted after the specified TTL (in days). * @returns The updated Space */ updateTrashbinPolicy(orgName: string, spaceName: string, policy: TrashPolicy, raw?: { raw: R; }): Promise>; /** * Update the storage configuration of a Space. * @remarks * ** Under development, breaking changes possible** * @param orgName Name of the Organization * @param spaceName Name of the Space * @param storage New storage configuration for the Space * @returns The updated Space */ patchStorage(orgName: string, spaceName: string, storage: SpacePatchStorageDto, raw?: { raw: R; }): Promise>; /** * Sets storage as valid or unvalid with errors. * @remarks * ** Under development, breaking changes possible** * @param orgName Name of the Organization * @param spaceName Name of the Space * @param storage Storage validation * @returns The updated Space */ patchStorageValid(orgName: string, spaceName: string, storage: SpacePatchStorageValidationDto, raw?: { raw: R; }): Promise>; }