import { Notifier } from '@dvn/alaca/global/notifier/models';
import { AlacaTheme } from '@dvn/alaca/theme';
import { DataApi } from '@dvn/core/api';
import { AppContextInvalidator } from '@dvn/core/global/context/context';
import { Logger } from '@dvn/core/log/logger';
import { InvalidationAction, NavigationAction, NavigationActionForward } from '@dvn/core/models/actions';
import { AppConfig } from '@dvn/core/models/app-config';
import { Membership } from '@dvn/core/models/membership';
import { DvnAppViewConfig } from '@dvn/core/models/view-config';
import { NavigationHandler } from '@dvn/core/routing/routing';
import { KimlikApi } from '@dvn/kimlik/api/kimlik-api';
import { User } from '@dvn/kimlik/api/models';
import { UserSettings } from '@dvn/kimlik/api/models/UserSettings';
import { Storage } from '@dvn/kimlik/storage/Storage.interface';
import { SozlukApi } from '@dvn/sozluk/api';
import { TakvimApi } from '@dvn/takvim/api/takvimApi';
import { UyeApi } from '@dvn/uye/api';
import { HTMLStencilElement } from '../../../../../stencil-public-runtime';
import { AtamaApi } from '../../../../atama/src/api/atamaApi';
export declare class DvnApp {
  navigationStack: NavigationActionForward[];
  dialogActionData?: NavigationActionForward;
  sideModalActionData?: NavigationActionForward;
  leftMenuWidth: number;
  apiAtama: AtamaApi;
  apiData: DataApi;
  apiKimlik: KimlikApi;
  apiSozluk: SozlukApi;
  apiTakvim: TakvimApi;
  apiUye: UyeApi;
  appConfig: AppConfig;
  logger: Logger;
  theme: AlacaTheme;
  navigate: NavigationHandler;
  storage?: Storage;
  path: string;
  appContextInvalidator: AppContextInvalidator;
  membership: Membership;
  memberships: Membership[];
  notifier: Notifier;
  user: User;
  userSettings: UserSettings;
  el: HTMLStencilElement;
  onAction(event: CustomEvent<NavigationAction>): void;
  onInvalidation(event: CustomEvent<InvalidationAction>): void;
  onMembershipChange(): void;
  onAppConfigChange(): void;
  getLogger: () => Logger;
  checkMembershipAndView(): void;
  removeLastNavigationItem(): void;
  getSideModalViewDetails(): {
    SideModalViewTag: string;
    sideModalView: DvnAppViewConfig;
  };
  getDialogViewDetails(): {
    DialogViewTag: string;
    dialogView: DvnAppViewConfig;
  };
  getRouteParams: () => any;
  getParamsForView: (view: DvnAppViewConfig) => {};
  onLeftMenuWidthChange: (width: number) => void;
  render(): any;
  private dismissSideModal;
  private dismissDialog;
}
