import { ResponsiveSize, ResponsiveUIHelper } from '@dvn/alaca/utils/ui';
import { ApiError, DataApi } from '@dvn/core/api';
import { InvalidationAction } from '@dvn/core/models/actions';
import { UserSettings } from '@dvn/kimlik/api/models/UserSettings';
import { Event as TakvimEvent } from '@dvn/takvim/api/models';
import { TakvimApi } from '@dvn/takvim/api/takvimApi';
import { TakvimDailyCalendarI18n } from './i18n';
import { EventEmitter } from '../../../../../stencil-public-runtime';
import { HTMLStencilElement } from '../../../../../stencil-public-runtime';
import { User } from "@dvn/kimlik/api/models";
export declare class TakvimDailyCalendar {
  uiHelper: ResponsiveUIHelper;
  currentTimePositionUpdater: any;
  userListRef: any;
  meetingListRef: any;
  el: HTMLStencilElement;
  calendarData: {
    user: User;
    meetings: TakvimEvent[];
  }[];
  meetings: TakvimEvent[];
  earliestStartTime: number;
  latestEndTime: number;
  everyPixelsForMinute: number;
  selectedDay: Date;
  currentTimeIndicatorLeftPosition: number;
  isProgressing: boolean;
  selectedUser: User;
  error: ApiError;
  size: ResponsiveSize;
  apiData: DataApi;
  apiTakvim: TakvimApi;
  strings: TakvimDailyCalendarI18n;
  user: User;
  userSettings: UserSettings;
  calendarConfigId: string;
  membershipConfigId: string;
  membershipConfigIdToGroupMeetings: string;
  membershipConfigIdToViewOnMeetings: string;
  action: EventEmitter;
  viewMeeting: EventEmitter;
  componentWillLoad(): void;
  componentDidLoad(): void;
  disconnectedCallback(): void;
  invalidate(_event: CustomEvent<InvalidationAction>): Promise<void>;
  onSizeChange: (size: ResponsiveSize) => void;
  fetchMeetings(): Promise<void>;
  onDateChange: (date: Date) => void;
  iterateDay: (amount: 1 | -1) => void;
  setSelectedDay: (date: Date) => void;
  getCurrentTimeIndicatorLeftPosition: () => number;
  generateTimeIntervalIndicatorPositions: () => any[];
  render(): any;
}
