/** @format */ import { NsWISConfigurations } from "../models/configurations.model"; import { BehaviorSubject, Observable, Subject } from "rxjs"; import { NsEmpWebExpData } from "../models/emp-web-exp.model"; import { ApiService } from "./api.service"; import { EmpUserService } from "./emp-user.service"; import { FormControl } from "@angular/forms"; import { ICommuteChoice } from "../components/forms/commute/commute.component"; import { ConfigurationService } from "./configuration.service"; import { CookieService } from "./cookie.service"; declare type IFormData = [NsEmpWebExpData.ICommuteOption[], NsEmpWebExpData.ICommuteOption[], ICommute?]; interface ICommute { login?: NsEmpWebExpData.ICommuteOption; logout?: NsEmpWebExpData.ICommuteOption; registrationNumber: string; } export declare class CommuteService { private apiSvc; private userSvc; private configSvc; private cookies; private formData$; formData: Observable; commuteDate: BehaviorSubject; private commuteChange$; commuteChange: Observable<[NsEmpWebExpData.ICommuteOption?, NsEmpWebExpData.ICommuteOption?, string?, string?, string?]>; parkingPremises: BehaviorSubject; private removeCommute$; removeCommute: Observable; loginOptions: NsEmpWebExpData.ICommuteOption[]; logoutOptions: NsEmpWebExpData.ICommuteOption[]; private parkingRefreshStream$; parkingRefreshStream: Observable>; regNo: FormControl; temporaryCommuteSelection: [NsEmpWebExpData.ICommuteOption?, NsEmpWebExpData.ICommuteOption?, string?, string?, string?]; currentChoice: ICommuteChoice; shiftsValid: boolean; gridUrlData$: BehaviorSubject; gridUrlData: Observable; vehicleType$: BehaviorSubject; vehicleType: Observable; allotedParkingDetails$: BehaviorSubject; allotedParkingDetails: Observable; enableGridFloorPlan: boolean; disableParkingSelection: boolean; multipleDaysSelected: boolean; entityTypeId: string; entityType: string; vehicleId: string; selectedVehicleRegNo: string; parkingFormOfficeGuid: string; parkingFormStartTime: string; parkingFormEndTime: string; removeParking: Subject; constructor(apiSvc: ApiService, userSvc: EmpUserService, configSvc: ConfigurationService, cookies: CookieService); setFormData(profile: NsEmpWebExpData.IEmployee, configs: NsWISConfigurations.IConfigurations, formData: any, date: number, endDate: number, tz: string, oldCommute?: ICommute, booking?: NsEmpWebExpData.IBookingDetailDTOS, multipleDays?: boolean): Promise; removeLocalStorage(): void; setEntityTypeId(entityTypeId: string): void; getEntityTypeId(): string; clearFormData(): void; setCommute(opt: [NsEmpWebExpData.ICommuteOption?, NsEmpWebExpData.ICommuteOption?, string?, string?, string?]): void; private genCommuteOptions; setParkingStream(obs: Observable, regNo: string, parkingFloorPlan?: boolean): void; setAllotedParkingData(data: NsEmpWebExpData.IAllotedParkingDetails): void; removeWaitlistedParking(premiseId: string): void; } export {};