import { SceneObject } from "./object/sceneObject.js"; import { Scene } from "./scene/scene.js"; import { SceneContext } from "./scene/sceneContext.js"; import { SceneMinimal } from "./scene/sceneMinimal.js"; import { SceneWithLinks } from "./scene/sceneWithLinks.js"; import { Tag } from "./tag/tag.js"; /** Generic href link */ export interface Link { href: string; } /** Links for paginated response lists */ export interface PagingLinks { self: Link; prev?: Link; next?: Link; } /** Full scene response with complete information including objects */ export interface SceneResponse { scene: Scene; } /** Scene response with metadata and links to resources */ export interface SceneMetadataResponse { scene: SceneWithLinks; } /** Scene list response model */ export interface SceneListResponse { scenes: SceneMinimal[]; _links?: PagingLinks; } /** Scene object response model */ export interface SceneObjectResponse { object: SceneObject; } /** Scene object list response model for bulk responses */ export interface SceneObjectListResponse { objects: SceneObject[]; } /** Scene object list response model for paginated responses */ export interface SceneObjectPagedResponse extends SceneObjectListResponse { sceneContext: SceneContext; _links: PagingLinks; } /** Tag response model */ export interface TagResponse { tag: Tag; } /** Tag list response model */ export interface TagListResponse { tags: Tag[]; _links?: PagingLinks; } export declare function isLink(v: unknown): v is Link; export declare function isPagingLinks(v: unknown): v is PagingLinks; export declare function isSceneResponse(v: unknown): v is SceneResponse; export declare function isSceneMetadataResponse(v: unknown): v is SceneMetadataResponse; export declare function isSceneListResponse(v: unknown): v is SceneListResponse; export declare function isSceneObjectResponse(v: unknown): v is SceneObjectResponse; export declare function isSceneObjectListResponse(v: unknown): v is SceneObjectListResponse; export declare function isSceneObjectPagedResponse(v: unknown): v is SceneObjectPagedResponse; export declare function isTagResponse(v: unknown): v is TagResponse; export declare function isTagListResponse(v: unknown): v is TagListResponse;