import type { NobjcObject } from "objc-js";
import type { _NSCharacterSet } from "./NSCharacterSet.js";
import type { _NSCopying } from "./NSCopying.js";
import type { _NSObject } from "./NSObject.js";
import type { _NSString } from "./NSString.js";
export declare class _NSScanner extends _NSObject {
    static alloc(): _NSScanner;
    static new(): _NSScanner;
    init(): _NSScanner;
    static scannerWithString$(string_: _NSString): _NSScanner;
    static localizedScannerWithString$(string_: _NSString): NobjcObject;
    initWithString$(string_: _NSString): _NSScanner;
    /** On overflow, the below methods will return success and clamp */
    scanInt$(result: NobjcObject | null): boolean;
    scanInteger$(result: NobjcObject | null): boolean;
    scanLongLong$(result: NobjcObject | null): boolean;
    scanUnsignedLongLong$(result: NobjcObject | null): boolean;
    scanFloat$(result: NobjcObject | null): boolean;
    scanDouble$(result: NobjcObject | null): boolean;
    scanHexInt$(result: NobjcObject | null): boolean;
    /** Optionally prefixed with "0x" or "0X" */
    scanHexLongLong$(result: NobjcObject | null): boolean;
    /** Corresponding to %a or %A formatting. Requires "0x" or "0X" prefix. */
    scanHexFloat$(result: NobjcObject | null): boolean;
    /** Corresponding to %a or %A formatting. Requires "0x" or "0X" prefix. */
    scanHexDouble$(result: NobjcObject | null): boolean;
    scanString$intoString$(string_: _NSString, result: NobjcObject | null): boolean;
    scanCharactersFromSet$intoString$(set: _NSCharacterSet, result: NobjcObject | null): boolean;
    scanUpToString$intoString$(string_: _NSString, result: NobjcObject | null): boolean;
    scanUpToCharactersFromSet$intoString$(set: _NSCharacterSet, result: NobjcObject | null): boolean;
    /** @deprecated scanDecimal() */
    scanDecimal$(dcm: NobjcObject | null): boolean;
    string(): _NSString;
    scanLocation(): number;
    setScanLocation$(value: number): void;
    charactersToBeSkipped(): _NSCharacterSet | null;
    setCharactersToBeSkipped$(value: _NSCharacterSet | null): void;
    caseSensitive(): boolean;
    setCaseSensitive$(value: boolean): void;
    locale(): NobjcObject | null;
    setLocale$(value: NobjcObject | null): void;
    atEnd(): boolean;
}
export interface _NSScanner extends _NSCopying {
}
