import type { _NSArray } from "../Foundation/NSArray.js";
import type { _NSCoding } from "../Foundation/NSCoding.js";
import type { _NSCopying } from "../Foundation/NSCopying.js";
import type { _NSDictionary } from "../Foundation/NSDictionary.js";
import type { _NSObject } from "../Foundation/NSObject.js";
import type { CGRect } from "../structs/CGRect.js";
import type { PDFBorderStyle } from "./PDFBorderStyle.js";
export declare class _PDFBorder extends _NSObject {
    static alloc(): _PDFBorder;
    static new(): _PDFBorder;
    init(): _PDFBorder;
    /**
     * Draw method. Not generally needed since the annotations themselves call this method when they are drawn. Call -[NSColor set] before calling (the various annotations do this often calling -[PDFAnnotation color] or whatever is appropriate for their class.
     */
    drawInRect$(rect: CGRect): void;
    /** See styles above. Whether border is drawn solid, dashed etc. */
    style(): PDFBorderStyle;
    setStyle$(value: PDFBorderStyle): void;
    /** Width of line used to stroke border. */
    lineWidth(): number;
    setLineWidth$(value: number): void;
    /** Array of floats specifying the dash pattern (see NSBezierPath for more detail). */
    dashPattern(): _NSArray | null;
    setDashPattern$(value: _NSArray | null): void;
    /**
     * List all border properties as key-value pairs; returns a deep copy of all pairs. Helpful for debugging.
     */
    borderKeyValues(): _NSDictionary;
}
export interface _PDFBorder extends _NSCopying, _NSCoding {
}
