92712a3035
* fix(server/previews): fix factory to use getStreams as required - convert javascript to typescript * convert ogImage.js to ogImage.ts * allow undefined angle to be provided
43 lines
1.0 KiB
TypeScript
43 lines
1.0 KiB
TypeScript
import { ObjectPreview } from '@/modules/previews/domain/types'
|
|
import { Nullable, Optional } from '@speckle/shared'
|
|
import express from 'express'
|
|
|
|
export type GetObjectPreviewInfo = (params: {
|
|
streamId: string
|
|
objectId: string
|
|
}) => Promise<Optional<ObjectPreview>>
|
|
|
|
export type CreateObjectPreview = (
|
|
params: Pick<ObjectPreview, 'streamId' | 'objectId' | 'priority'>
|
|
) => Promise<void>
|
|
|
|
export type GetPreviewImage = (params: {
|
|
previewId: string
|
|
}) => Promise<Nullable<Buffer>>
|
|
|
|
export type GetObjectPreviewBufferOrFilepath = (params: {
|
|
streamId: string
|
|
objectId: string
|
|
angle?: string
|
|
}) => Promise<
|
|
| {
|
|
type: 'file'
|
|
file: string
|
|
error?: true
|
|
errorCode?: string
|
|
}
|
|
| { type: 'buffer'; buffer: Buffer; error?: true; errorCode?: string }
|
|
>
|
|
|
|
export type SendObjectPreview = (
|
|
req: express.Request,
|
|
res: express.Response,
|
|
streamId: string,
|
|
objectId: string,
|
|
angle?: string
|
|
) => Promise<void>
|
|
|
|
export type CheckStreamPermissions = (
|
|
req: express.Request
|
|
) => Promise<{ hasPermissions: boolean; httpErrorCode: number }>
|