"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.SettingsValidationSchema = exports.settings = void 0;
const zod_1 = require("zod");
const constants_1 = require("./api/constants");
exports.settings = {
    salesforceSubdomain: {
        key: 'salesforceSubdomain',
        label: 'Domain name',
        obfuscated: false,
        required: true,
        description: 'The subdomain of your Salesforce tenant (e.g. "awell" or "awell.sandbox")',
    },
    clientId: {
        key: 'clientId',
        label: 'Client ID',
        obfuscated: false,
        required: true,
        description: '',
    },
    clientSecret: {
        key: 'clientSecret',
        label: 'Client secret',
        obfuscated: true,
        required: true,
        description: '',
    },
    username: {
        key: 'username',
        label: 'Username ',
        obfuscated: false,
        required: false,
        description: 'The username of the user that the connected app is imitating. A username is only needed when using the Password grant, leave blank to use client credentials grant.',
    },
    password: {
        key: 'password',
        label: 'Password ',
        obfuscated: true,
        required: false,
        description: 'The password of the user that the connected app is imitating. A password is only needed when using the Password grant, leave blank to use client credentials grant',
    },
    apiVersion: {
        key: 'apiVersion',
        label: 'API version ',
        obfuscated: false,
        required: false,
        description: `Defaults to ${constants_1.DEFAULT_API_VERSION}`,
    },
};
exports.SettingsValidationSchema = zod_1.z.object({
    salesforceSubdomain: zod_1.z.string().min(1),
    clientId: zod_1.z.string(),
    clientSecret: zod_1.z.string(),
    username: zod_1.z.string().optional(),
    password: zod_1.z.string().optional(),
    apiVersion: zod_1.z.string().optional(),
});
//# sourceMappingURL=settings.js.map