/**
 * Provides APIs for querying and navigating between contextual tabs of an application. Unlike personal tabs,
 * contextual tabs are pages associated with a specific context, such as channel or chat.
 * @module
 */
import { TabInformation, TabInstance, TabInstanceParameters } from '../interfaces';
/**
 * Navigates the hosted application to the specified tab instance.
 * @param tabInstance - The destination tab instance.
 * @returns Promise that resolves when the navigation has completed.
 */
export declare function navigateToTab(tabInstance: TabInstance): Promise<void>;
/**
 * Retrieves application tabs for the current user.
 * If no TabInstanceParameters are passed, the application defaults to favorite teams and favorite channels.
 * @param tabInstanceParameters - An optional set of flags that specify whether to scope call to favorite teams or channels.
 * @returns Promise that resolves with the {@link TabInformation}. Contains information for the user's tabs that are owned by this application {@link TabInstance}.
 */
export declare function getTabInstances(tabInstanceParameters?: TabInstanceParameters): Promise<TabInformation>;
/**
 * Retrieves the most recently used application tabs for the current user.
 * @param tabInstanceParameters - An optional set of flags. Note this is currently ignored and kept for future use.
 * @returns Promise that resolves with the {@link TabInformation}. Contains information for the users' most recently used tabs {@link TabInstance}.
 */
export declare function getMruTabInstances(tabInstanceParameters?: TabInstanceParameters): Promise<TabInformation>;
/**
 * Checks if the pages.tab capability is supported by the host
 * @returns boolean to represent whether the pages.tab capability is supported
 *
 * @throws Error if {@linkcode app.initialize} has not successfully completed
 */
export declare function isSupported(): boolean;
