import { Prisma, PrismaClient } from '@prisma/client';
import type { FileUpload } from 'graphql-upload';
import { Context } from '../../context';
export declare const deleteImageById: (id: string, authenticate: Context['authenticate'], image: PrismaClient['image'], mediaAdapter: Context['mediaAdapter']) => Promise<{
    focalPoint: import("@prisma/client/runtime/library").GetResult<{
        x: number;
        y: number;
        imageId: string;
    }, unknown> & {};
} & import("@prisma/client/runtime/library").GetResult<{
    id: string;
    createdAt: Date;
    description: string;
    extension: string;
    fileSize: number;
    filename: string;
    format: string;
    license: string;
    link: string;
    mimeType: string;
    modifiedAt: Date;
    source: string;
    tags: string[];
    title: string;
    height: number;
    width: number;
}, unknown> & {}>;
export type CreateImageInput = {
    file: Promise<FileUpload>;
    focalPoint: Prisma.FocalPointUncheckedCreateWithoutImageInput;
} & Omit<Prisma.ImageUncheckedCreateInput, 'modifiedAt' | 'focalPoint'>;
export declare const createImage: (input: CreateImageInput, authenticate: Context['authenticate'], mediaAdapter: Context['mediaAdapter'], imageClient: PrismaClient['image']) => Promise<{
    focalPoint: import("@prisma/client/runtime/library").GetResult<{
        x: number;
        y: number;
        imageId: string;
    }, unknown> & {};
} & import("@prisma/client/runtime/library").GetResult<{
    id: string;
    createdAt: Date;
    description: string;
    extension: string;
    fileSize: number;
    filename: string;
    format: string;
    license: string;
    link: string;
    mimeType: string;
    modifiedAt: Date;
    source: string;
    tags: string[];
    title: string;
    height: number;
    width: number;
}, unknown> & {}>;
export type UpdateImageInput = {
    focalPoint: Prisma.FocalPointUncheckedCreateWithoutImageInput;
} & Omit<Prisma.ImageUncheckedUpdateInput, 'focalPoint' | 'modifiedAt' | 'createdAt'>;
export declare const updateImage: (id: string, { focalPoint, ...input }: UpdateImageInput, authenticate: Context['authenticate'], image: PrismaClient['image']) => Prisma.Prisma__ImageClient<{
    focalPoint: import("@prisma/client/runtime/library").GetResult<{
        x: number;
        y: number;
        imageId: string;
    }, unknown> & {};
} & import("@prisma/client/runtime/library").GetResult<{
    id: string;
    createdAt: Date;
    description: string;
    extension: string;
    fileSize: number;
    filename: string;
    format: string;
    license: string;
    link: string;
    mimeType: string;
    modifiedAt: Date;
    source: string;
    tags: string[];
    title: string;
    height: number;
    width: number;
}, unknown> & {}, never, import("@prisma/client/runtime/library").DefaultArgs>;
