import type { _NSView } from "../AppKit/NSView.js";
import type { _NSWindow } from "../AppKit/NSWindow.js";
import type { CGRect } from "../structs/CGRect.js";
import type { NSBackingStoreType } from "../AppKit/NSBackingStoreType.js";
export declare class _ScreenSaverView extends _NSView {
    static alloc(): _ScreenSaverView;
    static new(): _ScreenSaverView;
    init(): _ScreenSaverView;
    /**
     * Returns the type of backing store you want for your screen saver’s window. ## Overview This method returns <doc ://com.apple.documentation/documentation/appkit/nsbackingstoretype/nsbackingstorebuffered> by default. If you want to change the backing store type, override this method and return a new value. If you override the method, you don’t need to call the inherited version.
     */
    static backingStoreType(): NSBackingStoreType;
    /**
     * Indicates whether to perform a gradual screen fade when the system starts and stops your screen saver’s animation. ## Overview This class method allows the screen saver view to select how the desktop visibly transitions to the screen saver view. When this method returns <doc ://com.apple.documentation/documentation/objectivec/yes>, the screen gradually darkens before the animation begins. When it returns <doc ://com.apple.documentation/documentation/objectivec/no>, the screen transitions immediately to the screen saver. The latter behavior is more appropriate if the screen saver animates a screenshot of the desktop, as is the case for optical lens effects. The default is <doc ://com.apple.documentation/documentation/objectivec/yes>.
     */
    static performGammaFade(): boolean;
    /**
     * Creates a newly allocated screen saver view with the specified frame rectangle and preview information. ## Overview The screen saver application installs the new view object into the view hierarchy of an <doc ://com.apple.documentation/documentation/appkit/nswindow> before the animation begins. This method is the designated initializer for the ``ScreenSaver/ScreenSaverView`` class. Returns `self`. - Parameters: - frame: The frame rectangle for the view. - isPreview: <doc ://com.apple.documentation/documentation/objectivec/yes> if this view provides a preview for system settings, or <doc ://com.apple.documentation/documentation/objectivec/no> if the system fills the screen with your view’s contents.
     */
    initWithFrame$isPreview$(frame: CGRect, isPreview: boolean): _ScreenSaverView | null;
    /**
     * Activates the periodic timer that animates the screen saver. ## Overview The system calls this method when it’s time for you to start animating your screen saver’s content. The system calls this method only once at the start of animations. Use this method to set up any initial state information you require or to allocate expensive resources. If you override this method, you must call the inherited implementation at some point. ## See also - ``ScreenSaver/ScreenSaverView/stopAnimation``
     */
    startAnimation(): void;
    /**
     * Deactivates the timer that advances the animation. ## Overview The system calls this method when it’s time for you to stop animating your screen saver’s content. The system calls this method only once at the end of animations. Use this method to unload expensive resources or to reset your screen saver to a known state. If you override this method, you must call the inherited implementation at some point. ## See also - ``ScreenSaver/ScreenSaverView/startAnimation``
     */
    stopAnimation(): void;
    /**
     * Draws the screen saver view. ## Overview ``ScreenSaver/ScreenSaverView`` implements ``ScreenSaver/ScreenSaverView/drawRect:`` to draw a black background. Subclasses can do their drawing here or in ``ScreenSaver/ScreenSaverView/animateOneFrame``. ## See also - ``ScreenSaver/ScreenSaverView/stopAnimation`` - ``ScreenSaver/ScreenSaverView/animateOneFrame`` - ``ScreenSaver/ScreenSaverView/startAnimation``
     */
    drawRect$(rect: CGRect): void;
    /**
     * Advances the screen saver’s animation by a single frame. ## Overview The system calls this method each time the timer animating the screen saver fires. The time between calls to this method is always at least ``ScreenSaver/ScreenSaverView/animationTimeInterval``. The system locks focus on your view before it calls this method, so you can use this method to draw content. You can also let ``ScreenSaver/ScreenSaverView/drawRect:`` perform the drawing, in which case you use this method to call <doc ://com.apple.documentation/documentation/appkit/nsview/1483475-setneedsdisplayinrect> to mark your view as dirty. The default implementation of this method does nothing. ## See also - ``ScreenSaver/ScreenSaverView/drawRect:``
     */
    animateOneFrame(): void;
    /**
     * The time interval between animation frames. If your screen saver has particular requirements for time between animation frames, call this method to set the animation rate to a reasonable value.
     */
    animationTimeInterval(): number;
    setAnimationTimeInterval$(value: number): void;
    /**
     * A Boolean value that indicates whether the screen saver is animating. ## Overview The value of this property is <doc ://com.apple.documentation/documentation/objectivec/yes> when the screen saver is animating, and <doc ://com.apple.documentation/documentation/objectivec/no> when it isn’t. ## See also - ``ScreenSaver/ScreenSaverView/stopAnimation`` - ``ScreenSaver/ScreenSaverView/startAnimation``
     */
    animating(): boolean;
    /**
     * A Boolean value that indicates whether the screen saver has an associated configuration sheet. If you provide a configuration sheet in your bundle, override this method and return <doc ://com.apple.documentation/documentation/objectivec/yes>. ## See also - ``ScreenSaver/ScreenSaverView/configureSheet``
     */
    hasConfigureSheet(): boolean;
    /**
     * The window that contains the controls to configure the screen saver. The system runs this window as a sheet, so include buttons that allow the user to end the modal session in which the sheet runs. When the user dismisses the sheet, the controller in charge of the sheet must end the document modal session by calling the <doc ://com.apple.documentation/documentation/appkit/nsapplication> method <doc ://com.apple.documentation/documentation/appkit/nsapplication/1428503-endsheet> with the sheet’s window as the argument. ## See also - ``ScreenSaver/ScreenSaverView/hasConfigureSheet``
     */
    configureSheet(): _NSWindow | null;
    /**
     * A Boolean value that indicates whether the screen saver view is set to a size suitable for previewing its content. ## Overview The system sets the value of this property to <doc ://com.apple.documentation/documentation/objectivec/yes> when it creates a smaller preview of your screen saver. When the value is <doc ://com.apple.documentation/documentation/objectivec/no>, your view matches the size of the screen. Use this property to adjust the content you present. For example, you might change the drawing parameters or data you display in your view.
     */
    preview(): boolean;
}
