import { FieldType } from '@awell-health/extensions-core';
import { z } from 'zod';
export declare const fields: {
    patientId: {
        id: string;
        label: string;
        description: string;
        type: FieldType.STRING;
        required: true;
    };
    otherPartyId: {
        id: string;
        label: string;
        description: string;
        type: FieldType.STRING;
    };
    contactTypeId: {
        id: string;
        label: string;
        description: string;
        type: FieldType.STRING;
        required: true;
    };
    appointmentTypeId: {
        id: string;
        label: string;
        description: string;
        type: FieldType.STRING;
        required: true;
    };
    datetime: {
        id: string;
        label: string;
        description: string;
        type: FieldType.DATE;
        required: true;
    };
    notes: {
        id: string;
        label: string;
        description: string;
        type: FieldType.TEXT;
        required: false;
    };
    externalVideochatUrl: {
        id: string;
        label: string;
        description: string;
        type: FieldType.STRING;
        required: false;
    };
    metadata: {
        id: string;
        label: string;
        description: string;
        type: FieldType.JSON;
        required: false;
    };
};
export declare const FieldsValidationSchema: z.ZodObject<{
    patientId: z.ZodString;
    otherPartyId: z.ZodOptional<z.ZodString>;
    contactTypeId: z.ZodString;
    appointmentTypeId: z.ZodString;
    datetime: z.ZodEffects<z.ZodDate, string, Date>;
    notes: z.ZodOptional<z.ZodString>;
    externalVideochatUrl: z.ZodEffects<z.ZodOptional<z.ZodString>, string | undefined, string | undefined>;
    metadata: z.ZodEffects<z.ZodOptional<z.ZodString>, Record<string, any>, string | undefined>;
}, "strip", z.ZodTypeAny, {
    patientId: string;
    appointmentTypeId: string;
    metadata: Record<string, any>;
    datetime: string;
    contactTypeId: string;
    notes?: string | undefined;
    otherPartyId?: string | undefined;
    externalVideochatUrl?: string | undefined;
}, {
    patientId: string;
    appointmentTypeId: string;
    datetime: Date;
    contactTypeId: string;
    metadata?: string | undefined;
    notes?: string | undefined;
    otherPartyId?: string | undefined;
    externalVideochatUrl?: string | undefined;
}>;
