import type { _CIColorKernel } from "./CIColorKernel.js";
import type { _CIImage } from "./CIImage.js";
import type { _NSString } from "../Foundation/NSString.js";
export declare class _CIBlendKernel extends _CIColorKernel {
    static alloc(): _CIBlendKernel;
    static new(): _CIBlendKernel;
    init(): _CIBlendKernel;
    /** The string argument should contain a program with one custom blend kernel. */
    static kernelWithString$(string_: _NSString): _CIBlendKernel | null;
    /** Component-wise operators */
    static componentAdd(): _CIBlendKernel;
    static componentMultiply(): _CIBlendKernel;
    static componentMin(): _CIBlendKernel;
    static componentMax(): _CIBlendKernel;
    /** Porter Duff http://dl.acm.org/citation.cfm?id=808606 */
    static clear(): _CIBlendKernel;
    static source(): _CIBlendKernel;
    static destination(): _CIBlendKernel;
    static sourceOver(): _CIBlendKernel;
    static destinationOver(): _CIBlendKernel;
    static sourceIn(): _CIBlendKernel;
    static destinationIn(): _CIBlendKernel;
    static sourceOut(): _CIBlendKernel;
    static destinationOut(): _CIBlendKernel;
    static sourceAtop(): _CIBlendKernel;
    static destinationAtop(): _CIBlendKernel;
    static exclusiveOr(): _CIBlendKernel;
    /** Standard separable blend modes */
    static multiply(): _CIBlendKernel;
    static screen(): _CIBlendKernel;
    static overlay(): _CIBlendKernel;
    static darken(): _CIBlendKernel;
    static lighten(): _CIBlendKernel;
    static colorDodge(): _CIBlendKernel;
    static colorBurn(): _CIBlendKernel;
    static hardLight(): _CIBlendKernel;
    static softLight(): _CIBlendKernel;
    static difference(): _CIBlendKernel;
    static exclusion(): _CIBlendKernel;
    /** Standard nonseparable blend modes */
    static hue(): _CIBlendKernel;
    static saturation(): _CIBlendKernel;
    static color(): _CIBlendKernel;
    static luminosity(): _CIBlendKernel;
    /** Additional blend modes */
    static subtract(): _CIBlendKernel;
    static divide(): _CIBlendKernel;
    static linearBurn(): _CIBlendKernel;
    static linearDodge(): _CIBlendKernel;
    static vividLight(): _CIBlendKernel;
    static linearLight(): _CIBlendKernel;
    static pinLight(): _CIBlendKernel;
    static hardMix(): _CIBlendKernel;
    static darkerColor(): _CIBlendKernel;
    static lighterColor(): _CIBlendKernel;
    /**
     * Apply the receiver CIBlendKernel to produce a new CIImage object by blending a foreground and background images. The 'extent' of the result image will be determined by the reciver and the extent of the forground and background images. For most of the builtin blend kernels (as well as custom blend kernels) the result image extent will be the union of the forground and background image extents.
     */
    applyWithForeground$background$(foreground: _CIImage, background: _CIImage): _CIImage | null;
    /**
     * Apply the receiver CIBlendKernel to produce a new CIImage object by blending a foreground and background images in the specifid colorspace. The 'extent' of the result image will be determined by the reciver and the extent of the forground and background images. For most of the builtin blend kernels (as well as custom blend kernels) the result image extent will be the union of the forground and background image extents.
     */
    applyWithForeground$background$colorSpace$(foreground: _CIImage, background: _CIImage, colorSpace: Uint8Array): _CIImage | null;
}
