import { z } from 'zod'; import type { Caching } from '../../shared.js'; import type { ThreekitAuthProps } from '../../ThreekitAuthProps.js'; import { Route } from '../Route.js'; export declare const CasHead: z.ZodObject<{ HEAD: z.ZodString; }, "strip", z.ZodTypeAny, { HEAD: string; }, { HEAD: string; }>; export type CasHead = z.infer; export declare const CasAsset: z.ZodObject<{ id: z.ZodString; type: z.ZodUnion<[z.ZodLiteral<"Node">, z.ZodLiteral<"Attribute">]>; HEAD: z.ZodString; orgId: z.ZodString; }, "strip", z.ZodTypeAny, { orgId: string; type: "Node" | "Attribute"; HEAD: string; id: string; }, { orgId: string; type: "Node" | "Attribute"; HEAD: string; id: string; }>; export type CasAsset = z.infer; export declare const CasObject: z.ZodObject<{ HEAD: z.ZodString; orgId: z.ZodString; objects: z.ZodRecord; }, "strip", z.ZodTypeAny, { orgId: string; HEAD: string; objects: Record; }, { orgId: string; HEAD: string; objects: Record; }>; export type CasObject = z.infer; export declare const CasManifested: z.ZodObject<{ assets: z.ZodArray, z.ZodLiteral<"Attribute">]>; HEAD: z.ZodString; orgId: z.ZodString; }, "strip", z.ZodTypeAny, { orgId: string; type: "Node" | "Attribute"; HEAD: string; id: string; }, { orgId: string; type: "Node" | "Attribute"; HEAD: string; id: string; }>, "many">; objects: z.ZodRecord; }, "strip", z.ZodTypeAny, { assets: { orgId: string; type: "Node" | "Attribute"; HEAD: string; id: string; }[]; objects: Record; }, { assets: { orgId: string; type: "Node" | "Attribute"; HEAD: string; id: string; }[]; objects: Record; }>; export type CasManifested = z.infer; export declare class Cas extends Route { constructor(auth: ThreekitAuthProps); healthcheck(): Promise>; getById(id: string, caching?: Caching): Promise; }, any>>; getManifestedById(id: string, caching?: Caching): Promise; }, any>>; getHeadById(id: string, caching?: Caching): Promise>; }