import type { _CIImage } from "./CIImage.js";
import type { _CIKernel } from "./CIKernel.js";
import type { _NSArray } from "../Foundation/NSArray.js";
import type { _NSString } from "../Foundation/NSString.js";
import type { CGRect } from "../structs/CGRect.js";
export declare class _CIColorKernel extends _CIKernel {
    static alloc(): _CIColorKernel;
    static new(): _CIColorKernel;
    init(): _CIColorKernel;
    /**
     * The string argument should contain a program with one color kernel. On iOS8 [CIColorKernel kernelWithString:] can return a CIKernel, CIColorKernel, or CIWarpKernel object. On iOS9 [CIColorKernel kernelWithString:] will return a CIColorKernel object or nil. On OS X [CIColorKernel kernelWithString:] will return a CIColorKernel object or nil.
     */
    static kernelWithString$(string_: _NSString): _CIColorKernel | null;
    /**
     * Apply the receiver CIColorKernel to produce a new CIImage object. The 'extent' is the bounding box of all non-clear pixels produced by the kernel. The 'args' is an array of parameters needed to describe the new image. The object types of the items in the array correspond to the argument types of the kernel function. For example, if the first argument in the kernel is a __sample, then the first object in the array must be a CIImage.
     */
    applyWithExtent$arguments$(extent: CGRect, args: _NSArray | null): _CIImage | null;
}
