import includes from 'lodash/includes';
export const EE_SCHEDULER_TASKS = {
    SLACK_AI_PROMPT: 'slackAiPrompt',
    AI_AGENT_EVAL_RESULT: 'aiAgentEvalResult',
    EMBED_ARTIFACT_VERSION: 'embedArtifactVersion',
    GENERATE_ARTIFACT_QUESTION: 'generateArtifactQuestion',
    APP_GENERATE_PIPELINE: 'appGeneratePipeline',
    SWEEP_STALE_APP_LOCKS: 'sweepStaleAppLocks',
};
export const SCHEDULER_TASKS = {
    HANDLE_SCHEDULED_DELIVERY: 'handleScheduledDelivery',
    // Legacy individual notification tasks (deprecated, kept for backwards compatibility)
    SEND_SLACK_NOTIFICATION: 'sendSlackNotification',
    SEND_EMAIL_NOTIFICATION: 'sendEmailNotification',
    SEND_MSTEAMS_NOTIFICATION: 'sendMsTeamsNotification',
    SEND_GOOGLE_CHAT_NOTIFICATION: 'sendGoogleChatNotification',
    // Batch notification tasks - one job per delivery type
    SEND_SLACK_BATCH_NOTIFICATION: 'sendSlackBatchNotification',
    SEND_EMAIL_BATCH_NOTIFICATION: 'sendEmailBatchNotification',
    SEND_MSTEAMS_BATCH_NOTIFICATION: 'sendMsTeamsBatchNotification',
    SEND_GOOGLE_CHAT_BATCH_NOTIFICATION: 'sendGoogleChatBatchNotification',
    UPLOAD_GSHEETS: 'uploadGsheets',
    UPLOAD_GSHEET_FROM_QUERY: 'uploadGsheetFromQuery',
    VALIDATE_PROJECT: 'validateProject',
    COMPILE_PROJECT: 'compileProject',
    CREATE_PROJECT_WITH_COMPILE: 'createProjectWithCompile',
    TEST_AND_COMPILE_PROJECT: 'testAndCompileProject',
    SQL_RUNNER: 'sqlRunner',
    SQL_RUNNER_PIVOT_QUERY: 'sqlRunnerPivotQuery',
    REPLACE_CUSTOM_FIELDS: 'replaceCustomFields',
    INDEX_CATALOG: 'indexCatalog',
    GENERATE_DAILY_JOBS: 'generateDailyJobs',
    EXPORT_CSV_DASHBOARD: 'exportCsvDashboard',
    RENAME_RESOURCES: 'renameResources',
    MATERIALIZE_PRE_AGGREGATE: 'materializePreAggregate',
    CLEAN_QUERY_HISTORY: 'cleanQueryHistory',
    DOWNLOAD_ASYNC_QUERY_RESULTS: 'downloadAsyncQueryResults',
    SYNC_SLACK_CHANNELS: 'syncSlackChannels',
    GENERATE_SLACK_CHANNEL_SYNC_JOBS: 'generateSlackChannelSyncJobs',
    CHECK_FOR_STUCK_JOBS: 'checkForStuckJobs',
    CLEAN_DEPLOY_SESSIONS: 'cleanDeploySessions',
    MANAGED_AGENT_HEARTBEAT: 'managedAgentHeartbeat',
    CLEAN_EXPIRED_PREVIEWS: 'cleanExpiredPreviews',
    ...EE_SCHEDULER_TASKS,
};
export const ALL_TASK_NAMES = Object.values(SCHEDULER_TASKS);
export const isSchedulerTaskName = (task) => includes(ALL_TASK_NAMES, task); // Had to use includes to avoid type error from Object.values().includes(string) related to union types https://github.com/microsoft/TypeScript/issues/46186
//# sourceMappingURL=schedulerTaskList.js.map