import { Address } from './address.model';
import { Day } from './day.model';
import { Equipment } from './enum/equipment.enum';
import { Weekday } from './enum/weekday.enum';
import { OpeningDay } from './openingDay.model';
import { PersonalOffer } from './personalOffer.model';
import { Week } from './week.model';
export declare class Structure {
    _id: string;
    numero: string;
    createdAt: string;
    updatedAt: string;
    structureName: string;
    structureType: string;
    description: string;
    address: Address;
    contactPhone: string;
    contactMail: string;
    website: string;
    facebook: string;
    twitter: string;
    instagram: string;
    linkedin: string;
    lockdownActivity: string;
    pmrAccess: boolean;
    placeOfReception: boolean;
    choiceCompletion: boolean;
    contactPersonFirstName: string;
    contactPersonLastName: string;
    contactPersonEmail: string;
    publicsAccompaniment: string[];
    proceduresAccompaniment: string[];
    remoteAccompaniment: boolean;
    accessModality: string[];
    labelsQualifications: string[];
    publics: string[];
    nbComputers: number;
    nbPrinters: number;
    nbTablets: number;
    nbNumericTerminal: number;
    nbScanners: number;
    exceptionalClosures: string;
    equipmentsAndServices: string[];
    hours: Week;
    freeWorkShop: boolean;
    otherDescription: string;
    isOpen: boolean;
    openedOn: OpeningDay;
    baseSkills: string[];
    accessRight: string[];
    parentingHelp: string[];
    socialAndProfessional: string[];
    digitalCultureSecurity: string[];
    distance?: number;
    coord?: number[];
    dataShareConsentDate?: string;
    accountVerified: boolean;
    personalOffers: PersonalOffer[];
    alreadySelected?: boolean;
    isClaimed?: boolean;
    constructor(obj?: any);
    getDayhours(day: Weekday): Day;
    /**
     * Check if a structure has equipments
     */
    hasEquipments(): boolean;
    /**
     * Verify that a structure as not only equipments with 0 as value. This is mostly use for display.
     * @returns {Boolean} validation
     */
    hasNotOnlyEmptyEquipments(): boolean;
    /**
     * Check if a structure has pass Numeric label
     */
    hasPassNumeric(): boolean;
    /**
     * Return a range, according to the distance, between [1,3] to get a distance reference.
     * - [0,5km] => 1
     * - [5km,10km] => 2
     * - [10km, [ => 3
     */
    getDistanceRange(): number;
    getLat(): number;
    getLon(): number;
    getEquipmentsIcon(equipment: Equipment): string;
    getEquipmentsTitle(equipment: Equipment): string;
    getLabelTypeStructure(): string;
    hasSocialNetwork(): boolean;
}
