/** * Copyright 2022 Agendize All Rights Reserved. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at. * * Http://www.apache.org/licenses/LICENSE-2.0. * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ import { ImageEntity } from "./Image"; import { SettingsPeriodWorkingDto, SettingsPeriodWorkingEntity, SettingsWorkingDayDto, SettingsWorkingDayEntity } from "./WorkingHours"; export declare enum ServiceTypeEntity { DEFAULT = "default", EVENT = "event" } export declare class ServiceEntity { id?: string; cipherId?: string; company?: { id: string; name?: string; }; name: string; description?: string; capacity: number; price?: number; bufferDuration?: number; preparationDuration?: number; validation?: 'location' | 'staff' | 'manager' | 'auto'; externalId?: string; duration: number; locations: ('companyAddress' | 'videoconference' | 'phone' | 'custom')[]; locationCustom?: string; picture?: ImageEntity; staffsSkill?: string[]; color?: string; checkFilterColor?: string; type?: ServiceTypeEntity; availability?: 'public' | 'backoffice' | 'hidden' | 'disabled'; minAppointmentDate?: string; maxAppointmentDate?: string; appointmentDateScope?: string; i18n?: { fr?: { name?: string; description?: string; }; en?: { name?: string; description?: string; }; de?: { name?: string; description?: string; }; pt?: { name?: string; description?: string; }; es?: { name?: string; description?: string; }; nl?: { name?: string; description?: string; }; jp?: { name?: string; description?: string; }; it?: { name?: string; description?: string; }; }; resources?: { id: string; name?: string; quantity?: number; }[]; maxCancellationDelay?: number; useWorkingHours: boolean; workingHours: SettingsWorkingDayEntity[]; customWorkingHours: SettingsPeriodWorkingEntity[]; constructor(); static fromServiceDto(dto: ServiceDto): ServiceEntity; static toServiceDto(entity: ServiceEntity): ServiceDto; } export declare class ServiceDto { id?: string; cipherId?: string; company?: { id: string; name?: string; }; name: string; duration: number; locations: ('companyAddress' | 'videoconference' | 'phone' | 'custom')[]; locationCustom?: string; picture?: ImageEntity; description?: string; capacity: number; price?: number; bufferDuration?: number; preparationDuration?: number; validation?: 'location' | 'staff' | 'manager' | 'auto'; externalId?: string; staff?: { id: string; }[]; color?: string; availability?: 'public' | 'backoffice' | 'hidden' | 'disabled'; resource?: { id: string; name?: string; quantity?: number; }[]; bypassFreeBusyAvailabilities?: boolean; minAppointmentDate?: string; maxAppointmentDate?: string; appointmentDateScope?: string; i18n?: { fr?: { name?: string; description?: string; }; en?: { name?: string; description?: string; }; de?: { name?: string; description?: string; }; pt?: { name?: string; description?: string; }; es?: { name?: string; description?: string; }; nl?: { name?: string; description?: string; }; jp?: { name?: string; description?: string; }; it?: { name?: string; description?: string; }; }; maxCancellationDelay?: number; useWorkingHours?: boolean; workingHours?: SettingsWorkingDayDto[]; customWorkingHours?: SettingsPeriodWorkingDto[]; }