"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.FieldsValidationSchema = exports.fields = void 0;
const extensions_core_1 = require("@awell-health/extensions-core");
const zod_1 = require("zod");
exports.fields = {
    templateId: {
        id: 'templateId',
        label: 'Template ID',
        description: 'Use the template id to create a SignatureRequest from a template.',
        type: extensions_core_1.FieldType.STRING,
        required: true,
    },
    subject: {
        id: 'subject',
        label: 'Subject',
        description: 'The subject in the email that will be sent to the signers.',
        type: extensions_core_1.FieldType.STRING,
        required: false,
    },
    message: {
        id: 'message',
        label: 'Message',
        description: 'The custom message in the email that will be sent to the signers.',
        type: extensions_core_1.FieldType.STRING,
        required: false,
    },
    patientSignerRole: {
        id: 'patientSignerRole',
        label: 'Patient signer role',
        description: "Must match an existing role in chosen template. It's case-sensitive. The patient will sign first.",
        type: extensions_core_1.FieldType.STRING,
        required: true,
    },
    patientSignerName: {
        id: 'patientSignerName',
        label: 'Patient signer name',
        description: 'The name of the patient signer.',
        type: extensions_core_1.FieldType.STRING,
        required: true,
    },
    patientSignerEmail: {
        id: 'patientSignerEmail',
        label: 'Patient signer email',
        description: 'The email address of the patient signer.',
        type: extensions_core_1.FieldType.STRING,
        required: true,
    },
    providerSignerRole: {
        id: 'providerSignerRole',
        label: 'Provider signer role',
        description: "Must match an existing role in chosen template. It's case-sensitive. The provider will sign second, after the patient.",
        type: extensions_core_1.FieldType.STRING,
        required: true,
    },
    providerSignerName: {
        id: 'providerSignerName',
        label: 'Provider signer name',
        description: 'The name of the provider signer.',
        type: extensions_core_1.FieldType.STRING,
        required: true,
    },
    providerSignerEmail: {
        id: 'providerSignerEmail',
        label: 'Provider signer email',
        description: 'The email address of the provider signer.',
        type: extensions_core_1.FieldType.STRING,
        required: true,
    },
    providerClientUserId: {
        id: 'providerClientUserId',
        label: 'Provider client user ID',
        description: 'Unique identifier for the provider used for embedded signing. This should match the provider stakeholder ID in your care flow.',
        type: extensions_core_1.FieldType.STRING,
        required: true,
    },
};
exports.FieldsValidationSchema = zod_1.z.object({
    templateId: zod_1.z.string(),
    subject: zod_1.z.optional(zod_1.z.string()),
    message: zod_1.z.optional(zod_1.z.string()),
    patientSignerRole: zod_1.z.string(),
    patientSignerName: zod_1.z.string(),
    patientSignerEmail: zod_1.z.string(),
    providerSignerRole: zod_1.z.string(),
    providerSignerName: zod_1.z.string(),
    providerSignerEmail: zod_1.z.string(),
    providerClientUserId: zod_1.z.string(),
});
//# sourceMappingURL=fields.js.map