import { AutoEncoder } from '@simonbackx/simple-encoding'; import { Address } from './addresses/Address.js'; import { Image } from './files/Image.js'; import { Group } from './Group.js'; import { RichText } from './RichText.js'; export declare class EventLocation extends AutoEncoder { name: string; address: Address | null; } /** * In case we need to cache the name, to properly display information without having to fetch loads of data */ export declare class NamedObject extends AutoEncoder { id: string; name: string; description: string; } export declare class EventMeta extends AutoEncoder { /** * Contains the name of the organization for displaying the event */ organizationCache: NamedObject | null; description: RichText; visible: boolean; location: EventLocation | null; /** * A valid membership is required for one of these default age groups * * null = no restriction */ defaultAgeGroupIds: string[] | null; /** * A valid membership is required for one of these specific groups * (only if organizationId is set) * * null = no restriction */ groups: NamedObject[] | null; /** * A valid membership is required for an organization with one of these tags * * null = no restriction (unless organizationId is set) */ organizationTagIds: string[] | null; coverPhoto: Image | null; minAge: number | null; maxAge: number | null; } export declare class Event extends AutoEncoder { id: string; name: string; typeId: string; organizationId: string | null; startDate: Date; endDate: Date; meta: EventMeta; group: Group | null; webshopId: string | null; createdAt: Date; updatedAt: Date; get dateRange(): string; static group(events: Event[]): { title: string; events: Event[]; }[]; get eventNotificationTypes(): import("./EventNotificationType.js").EventNotificationType[]; static decode(...args: Parameters): any; } //# sourceMappingURL=Event.d.ts.map