"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.generateMockAppointment = void 0;
const faker_1 = require("@faker-js/faker");
const generateMockAppointment = (required, overrides = {}) => ({
    id: faker_1.faker.number.int({ min: 1, max: 999999 }),
    scheduled_date: required.scheduled_date,
    duration: 60,
    billing: undefined,
    payment: undefined,
    time_slot_type: 'appointment',
    time_slot_status: 'available',
    reason: required.reason,
    mode: faker_1.faker.lorem.word(),
    description: '',
    status: {
        status: required.status,
        room: undefined,
        status_date: faker_1.faker.date.recent().toISOString(),
        status_detail: undefined,
    },
    patient: faker_1.faker.number.int({ min: 10000, max: 99999 }),
    physician: faker_1.faker.number.int({ min: 100000000000000, max: 999999999999999 }),
    practice: faker_1.faker.number.int({ min: 100000000000000, max: 999999999999999 }),
    recurring_event_schedule: undefined,
    metadata: undefined,
    created_date: faker_1.faker.date.recent().toISOString(),
    last_modified_date: faker_1.faker.date.recent().toISOString(),
    deleted_date: undefined,
    service_location: {
        id: faker_1.faker.number.int({ min: 1, max: 999 }),
        name: faker_1.faker.company.name(),
        place_of_service: faker_1.faker.number.int({ min: 1, max: 99 }),
        address_line1: faker_1.faker.location.streetAddress(),
        address_line2: faker_1.faker.location.secondaryAddress(),
        city: faker_1.faker.location.city(),
        state: faker_1.faker.location.state({ abbreviated: true }),
        zip: faker_1.faker.location.zipCode(),
        phone: faker_1.faker.phone.number(),
    },
    telehealth_details: '',
    ...overrides,
});
exports.generateMockAppointment = generateMockAppointment;
//# sourceMappingURL=generateMockAppointment.js.map