@speckle/shared
Version:
Shared code between various Speckle JS packages
60 lines • 2.15 kB
TypeScript
export declare enum ViewerResourceType {
Model = "Model",
Object = "Object",
ModelFolder = "ModelFolder",
AllModels = "all-models"
}
export interface ViewerResource {
type: ViewerResourceType;
toString(): string;
}
export declare class ViewerAllModelsResource implements ViewerResource {
type: ViewerResourceType;
toString(): string;
}
export declare class ViewerModelResource implements ViewerResource {
type: ViewerResourceType;
modelId: string;
versionId?: string;
constructor(modelId: string, versionId?: string);
toString(): string;
}
export declare class ViewerVersionResource extends ViewerModelResource {
versionId: string;
constructor(modelId: string, versionId: string);
toJSON(): string;
}
export declare class ViewerObjectResource implements ViewerResource {
type: ViewerResourceType;
objectId: string;
constructor(objectId: string);
toString(): string;
}
export declare class ViewerModelFolderResource implements ViewerResource {
type: ViewerResourceType;
folderName: string;
constructor(folderName: string);
toString(): string;
}
export declare function parseUrlParameters(resourceGetParam: string): ViewerResource[];
export declare function createGetParamFromResources(resources: ViewerResource[]): string;
export declare const isAllModelsResource: (r: ViewerResource) => r is ViewerAllModelsResource;
export declare const isModelResource: (r: ViewerResource) => r is ViewerModelResource;
export declare const isObjectResource: (r: ViewerResource) => r is ViewerObjectResource;
export declare const isModelFolderResource: (r: ViewerResource) => r is ViewerModelFolderResource;
declare class ViewerResourceBuilder {
#private;
addAllModels(): this;
addModel(modelId: string, versionId?: string): this;
addModelFolder(folderName: string): this;
addObject(objectId: string): this;
toString(): string;
toResources(): ViewerResource[];
clear(): this;
}
/**
* Fluent API for easier resource building
*/
export declare function resourceBuilder(): ViewerResourceBuilder;
export {};
//# sourceMappingURL=route.d.ts.map