import { ActiveState } from './active-state'; import { Observable } from 'rxjs'; import { CoreServices } from '../services'; export type ActiveViewSet = { id?: string; itemType: 'view_set'; layout?: { showFooter: boolean; showHeader: boolean; showToolbar: boolean; showCommandBar: boolean; }, name: string; activateStateGuard?: any; deactivateStateGuard?: any; header?: { title?: string | ((svc: CoreServices) => Observable); controls?: (p) => any; }; footer: { type: 'pagination' | 'node_nav'; }; actionPanel?: (instance: any) => () => any[]; useMockContextData?: boolean; mockContextData?: { [id: string]: any; }; dataSource: Function; views: { [id: string]: { template: any; dataBinding: string; } }; contextMenu?: { itemOne: { [id: string]: ActiveState }; itemTwo: { [id: string]: ActiveState }; }; //State level Lifecycle onStateInit?: (instance) => void; onStateDestroy?: (instance) => void; };