import type { NobjcObject } from "objc-js";
import type { _NSAnimatablePropertyContainer } from "./NSAnimatablePropertyContainer.js";
import type { _NSPageControllerDelegate } from "./NSPageControllerDelegate.js";
import type { _NSViewController } from "./NSViewController.js";
import type { _NSArray } from "../Foundation/NSArray.js";
import type { NSPageControllerTransitionStyle } from "./NSPageControllerTransitionStyle.js";
export declare class _NSPageController extends _NSViewController {
    static alloc(): _NSPageController;
    static new(): _NSPageController;
    init(): _NSPageController;
    /**
     * Clears the arrangedObjects array after the selected index, adds the argument to the arrangedObjects array, and sets the selectedIndex to the argument.
     */
    navigateForwardToObject$(object_: NobjcObject): void;
    /**
     * Hide the transition view used for animation and show the selectedViewController.view. Generally, this is called during pageControllerDidEndLiveTransition: in the delegate when the new contents of view is ready to be displayed.
     */
    completeTransition(): void;
    /**
     * Supported IBActions - all IB actions are animated and delegate LiveTransition methods are called.
     */
    navigateBack$(sender: NobjcObject | null): void;
    navigateForward$(sender: NobjcObject | null): void;
    /** sender must respond to -integerValue; */
    takeSelectedIndexFrom$(sender: NobjcObject | null): void;
    delegate(): _NSPageControllerDelegate | null;
    setDelegate$(value: _NSPageControllerDelegate | null): void;
    /**
     * The viewController associated with the selected arrangedObject. May be nil if delegate is not supplying viewControllers.
     */
    selectedViewController(): _NSViewController | null;
    /**
     * The animation style used when transitioning from one page to another. The default value is NSPageControllerTransitionStyleStackHistory
     */
    transitionStyle(): NSPageControllerTransitionStyle;
    setTransitionStyle$(value: NSPageControllerTransitionStyle): void;
    /**
     * Array of all displayed objects (after sorting and potentially filtering by you). The delegate will be asked for snapshots as they are needed. Alternatively, you may never directly set this array and use the -navigateForwardToRepresentedObject API to create a history as the user navigates. This property is KVO compliant.
     */
    arrangedObjects(): _NSArray;
    setArrangedObjects$(value: _NSArray): void;
    /**
     * The index into the arrangedObjects that is being displayed. This property is KVO compliant. To animate a transition to a new index, use NSPageController's animator object.
     */
    selectedIndex(): number;
    setSelectedIndex$(value: number): void;
}
export interface _NSPageController extends _NSAnimatablePropertyContainer {
}
