/**
 * @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 { BorderParams } from "./border.cpu";
export interface ImageBorderTaskInput extends ImageFilterInput {
    borderWidth?: number;
    color: string | {
        r: number;
        g: number;
        b: number;
        a?: number;
    };
}
export type ImageBorderTaskOutput = ImageFilterOutput & Record<string, unknown>;
export declare class ImageBorderTask extends ImageFilterTask<BorderParams, ImageBorderTaskInput & Record<string, unknown>, ImageBorderTaskOutput> {
    static readonly type = "ImageBorderTask";
    static readonly category = "Image";
    static title: string;
    static description: string;
    static inputSchema(): never;
    static outputSchema(): never;
    protected readonly filterName = "border";
    protected opParams(input: ImageBorderTaskInput & Record<string, unknown>): BorderParams;
    protected scalePreviewParams({ borderWidth, color }: BorderParams, s: number): BorderParams;
}
declare module "@workglow/task-graph" {
    interface Workflow {
        imageBorder: CreateWorkflow<ImageBorderTaskInput & Record<string, unknown>, ImageBorderTaskOutput, TaskConfig>;
    }
}
//# sourceMappingURL=ImageBorderTask.d.ts.map