/**
 * Created by rburson on 3/15/16.
 */
import * as React from 'react';
import { CvState, CvProps, CvEvent, CvNavigationResult, CvValueProvider, CvActionFiredResult } from './../core/catreact-core';
import { Workbench, AppWinDef } from 'catavolt-sdk';
export interface CvGraphicalWorkbenchState extends CvState {
    workbench?: Workbench;
}
export interface CvGraphicalWorkbenchProps extends CvProps {
    /**
     * The sdk {AppWinDef} from which to retrieve the workbenches
     */
    appWinDef?: AppWinDef;
    /**
     * Register to receive {@link CvEvent}s of type {@link CvNavigationResult}
     */
    launchListeners?: Array<(event: CvEvent<CvNavigationResult>) => void>;
    /**
     * Register to receive {@link CvEvent}s of type {@link CvActionFiredResult}
     */
    actionListeners?: Array<(event: CvEvent<CvActionFiredResult>) => void>;
    /**
     * The workbench id of the initial workbench to show.
     * Should not be used if the initialWorkbench property is provided
     */
    initialWorkbenchId?: string;
    /**
     * The initial workbench to show
     * Should not be used if the initialWorkbenchId property is provided
     */
    initialWorkbench?: Workbench;
    /**
     * Number of columns to use for the workbench launcher display
     */
    numCols?: number;
    /**
     * A workbench selection provider, to which this component will 'listen' and display workbench selection changes
     */
    selectionProvider?: CvValueProvider<Workbench>;
}
export declare var CvGraphicalWorkbench: React.ClassicComponentClass<CvGraphicalWorkbenchProps>;
