import type { _NSMenu } from "./NSMenu.js";
import type { _NSTextField } from "./NSTextField.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 _NSSearchField extends _NSTextField {
    static alloc(): _NSSearchField;
    static new(): _NSSearchField;
    init(): _NSSearchField;
    /** @deprecated searchTextBounds */
    rectForSearchTextWhenCentered$(isCentered: boolean): CGRect;
    /**
     * @deprecated The placeholder centering UI design is no longer available. Setting this property is no-op.
     */
    rectForSearchButtonWhenCentered$(isCentered: boolean): CGRect;
    /**
     * @deprecated The placeholder centering UI design is no longer available. Setting this property is no-op.
     */
    rectForCancelButtonWhenCentered$(isCentered: boolean): CGRect;
    /**
     * The rectangle for the search text within the bounds of the search field. Subclasses can override this method for custom layout purposes.
     */
    searchTextBounds(): CGRect;
    /**
     * The rectangle for the search button within the bounds of the search field. Subclasses can override this method for custom layout purposes.
     */
    searchButtonBounds(): CGRect;
    /**
     * The rectangle for the cancel button within the bounds of the search field. Subclasses can override this method for custom layout purposes.
     */
    cancelButtonBounds(): CGRect;
    /** if app wants to do custom search lists. will return empty array if no searches */
    recentSearches(): _NSArray;
    setRecentSearches$(value: _NSArray): void;
    /** must be set to use. default is nil which means no autosave. */
    recentsAutosaveName(): _NSString | null;
    setRecentsAutosaveName$(value: _NSString | null): void;
    /**
     * set/get search menu template. Menu can use custom tagged items to indicate special items. this menu isn't actually set but used to construct the dynamic search menu. if cleared, then we don't track recents.
     */
    searchMenuTemplate(): _NSMenu;
    setSearchMenuTemplate$(value: _NSMenu): void;
    /**
     * if clear, send action on each key stroke (after sufficient amount of time so we don't interfere with typing). if set, send only on return/enter or clicking magnifying search button
     */
    sendsWholeSearchString(): boolean;
    setSendsWholeSearchString$(value: boolean): void;
    /**
     * set/get limit max recents. allowable between 0 and 254. setting -1 will use default.
     */
    maximumRecents(): number;
    setMaximumRecents$(value: number): void;
    sendsSearchStringImmediately(): boolean;
    setSendsSearchStringImmediately$(value: boolean): void;
    /**
     * @deprecated The placeholder centering UI design is no longer available. Setting this property is no-op.
     */
    centersPlaceholder(): boolean;
    setCentersPlaceholder$(value: boolean): void;
}
