@wepublish/api
Version:
API core for we.publish.
15 lines (14 loc) • 610 B
TypeScript
import { Image } from '@prisma/client';
import type { FileUpload } from 'graphql-upload';
import { ImageTransformation, UploadImage } from './image-upload';
export interface ArrayBufferUpload {
filename: string;
mimetype: string;
arrayBuffer: ArrayBuffer;
}
export interface MediaAdapter {
uploadImage(fileUpload: Promise<FileUpload>): Promise<UploadImage>;
uploadImageFromArrayBuffer(arrayBufferUpload: Promise<ArrayBufferUpload>): Promise<UploadImage>;
deleteImage(id: string): Promise<boolean>;
getImageURL(image: Image, transformation?: ImageTransformation): Promise<string>;
}