/**
 * @copyright
 * Copyright 2026 Steven Roussey
 * All Rights Reserved
 */
import { CreateWorkflow, type TaskConfig } from "@workglow/task-graph";
import { ImageFilterTask, type ImageFilterInput, type ImageFilterOutput } from "../ImageFilterTask";
import type { ResizeParams } from "./resize.cpu";
export interface ImageResizeTaskInput extends ImageFilterInput {
    width: number;
    height: number;
    fit?: string;
    kernel?: string;
}
export type ImageResizeTaskOutput = ImageFilterOutput & Record<string, unknown>;
export declare class ImageResizeTask extends ImageFilterTask<ResizeParams, ImageResizeTaskInput & Record<string, unknown>, ImageResizeTaskOutput> {
    static readonly type = "ImageResizeTask";
    static readonly category = "Image";
    static title: string;
    static description: string;
    static inputSchema(): never;
    static outputSchema(): never;
    protected readonly filterName = "resize";
    protected opParams(input: ImageResizeTaskInput & Record<string, unknown>): ResizeParams;
    protected scalePreviewParams({ width, height, fit, kernel }: ResizeParams, s: number): ResizeParams;
}
declare module "@workglow/task-graph" {
    interface Workflow {
        imageResize: CreateWorkflow<ImageResizeTaskInput & Record<string, unknown>, ImageResizeTaskOutput, TaskConfig>;
    }
}
//# sourceMappingURL=ImageResizeTask.d.ts.map