Files
speckle-server/packages/server/modules/gendo/domain/operations.ts
T
Gergő Jedlicska 01b222ced8 gergo/web 2155 gendo module multi region (#3528)
* fix(workspaces): allow workspace delete for paid workspaces

* feat(gendo): multi region gendo with new api integration and limits

* feat(gendo): user credits

* feat: adds limits to gendo panel, and terms and conditions link

* fix: reworks setting back camera view

* feat(gendo): webhook signature verification

* fix(gendo): nullability

* test(blobstorage): fix test dependency injection

---------

Co-authored-by: Dimitrie Stefanescu <didimitrie@gmail.com>
2024-11-22 16:43:31 +01:00

49 lines
1.4 KiB
TypeScript

import { GendoAiRenderInput } from '@/modules/core/graph/generated/graphql'
import { GendoAIRender, UserCredits } from '@/modules/gendo/domain/types'
import { NullableKeysToOptional, Optional } from '@speckle/shared'
import { SetOptional } from 'type-fest'
export type StoreRender = (
input: NullableKeysToOptional<SetOptional<GendoAIRender, 'createdAt' | 'updatedAt'>>
) => Promise<GendoAIRender>
export type GetRenderByGenerationId = (params: {
gendoGenerationId: string
}) => Promise<Optional<GendoAIRender>>
export type GetLatestVersionRenderRequests = (params: {
versionId: string
}) => Promise<GendoAIRender[]>
export type GetVersionRenderRequest = (params: {
versionId: string
id: string
}) => Promise<Optional<GendoAIRender>>
export type UpdateRenderRecord = (params: {
input: Partial<GendoAIRender>
id: string
}) => Promise<GendoAIRender>
export type CreateRenderRequest = (
input: GendoAiRenderInput & {
userId: string
}
) => Promise<GendoAIRender>
export type UpdateRenderRequest = (input: {
responseImage: string
status: string
gendoGenerationId: string
}) => Promise<GendoAIRender>
export type RequestNewImageGeneration = (args: {
userId: string
baseImage: string
projectId: string
prompt: string
}) => Promise<{ status: string; generationId: string }>
export type GetUserCredits = (args: { userId: string }) => Promise<UserCredits | null>
export type UpsertUserCredits = (args: { userCredits: UserCredits }) => Promise<void>