@novu/framework 0.24.3-alpha.10

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,253 @@
1
+ import { S as Schema, J as JsonSchema, F as FromSchema, E as Execute, W as WorkflowOptions, D as DiscoverWorkflowOutput } from './handler-y6PZIhGI.js';
2
+ export { A as ActionStep, Y as ActionStepEnum, R as Awaitable, p as ChannelStep, X as ChannelStepEnum, v as ChatOutput, w as ChatResult, C as Client, c as ClientOptions, b as CodeResult, o as CustomStep, y as DelayOutput, z as DelayResult, K as DigestOutput, L as DigestResult, g as DiscoverOutput, e as DiscoverProviderOutput, f as DiscoverStepOutput, Q as Either, q as EmailOutput, r as EmailResult, h as Event, U as ExecuteInput, k as ExecuteOutput, j as ExecuteOutputMetadata, H as HealthCheck, I as InAppOutput, x as InAppResult, n as JobStatusEnum, N as NovuRequestHandler, P as PushOutput, u as PushResult, a as ServeHandlerOptions, V as Skip, s as SmsOutput, t as SmsResult, i as State, M as Step, m as StepOptions, d as StepType, O as Subscriber, l as SupportedFrameworkName, T as TriggerEvent, B as digestRegularOutput, G as digestTimedOutput } from './handler-y6PZIhGI.js';
3
+ import { ValidateFunction as ValidateFunction$1 } from 'ajv';
4
+ import { ParseReturnType } from 'zod';
5
+ import 'json-schema-to-ts';
6
+ import '@novu/shared';
7
+
8
+ declare enum PostActionEnum {
9
+ TRIGGER = "trigger",
10
+ EXECUTE = "execute",
11
+ PREVIEW = "preview"
12
+ }
13
+ declare enum GetActionEnum {
14
+ DISCOVER = "discover",
15
+ HEALTH_CHECK = "health-check",
16
+ CODE = "code"
17
+ }
18
+
19
+ declare enum NovuApiEndpointsEnum {
20
+ SYNC = "/v1/bridge/sync",
21
+ DIFF = "/v1/bridge/diff"
22
+ }
23
+ declare const SIGNATURE_TIMESTAMP_TOLERANCE_MINUTES = 5;
24
+ declare const SIGNATURE_TIMESTAMP_TOLERANCE: number;
25
+
26
+ declare enum ErrorCodeEnum {
27
+ WORKFLOW_NOT_FOUND_ERROR = "WorkflowNotFoundError",
28
+ WORKFLOW_ALREADY_EXISTS_ERROR = "WorkflowAlreadyExistsError",
29
+ WORKFLOW_EXECUTION_FAILED_ERROR = "WorkflowExecutionFailedError",
30
+ EXECUTION_STATE_OUTPUT_INVALID_ERROR = "ExecutionStateOutputInvalidError",
31
+ EXECUTION_STATE_RESULT_INVALID_ERROR = "ExecutionStateResultInvalidError",
32
+ EXECUTION_PROVIDER_OUTPUT_INVALID_ERROR = "ExecutionProviderOutputInvalidError",
33
+ PROVIDER_NOT_FOUND_ERROR = "ProviderNotFoundError",
34
+ PROVIDER_EXECUTION_FAILED_ERROR = "ProviderExecutionFailedError",
35
+ STEP_NOT_FOUND_ERROR = "StepNotFoundError",
36
+ STEP_ALREADY_EXISTS_ERROR = "StepAlreadyExistsError",
37
+ STEP_EXECUTION_FAILED_ERROR = "StepExecutionFailedError",
38
+ EXECUTION_STATE_CORRUPT_ERROR = "ExecutionStateCorruptError",
39
+ EXECUTION_EVENT_PAYLOAD_INVALID_ERROR = "ExecutionEventPayloadInvalidError",
40
+ EXECUTION_EVENT_CONTROL_INVALID_ERROR = "ExecutionEventControlInvalidError",
41
+ EXECUTION_STATE_CONTROL_INVALID_ERROR = "ExecutionStateControlInvalidError",
42
+ METHOD_NOT_ALLOWED_ERROR = "MethodNotAllowedError",
43
+ INVALID_ACTION_ERROR = "InvalidActionError",
44
+ MISSING_API_KEY_ERROR = "MissingApiKeyError",
45
+ SIGNATURE_MISMATCH_ERROR = "SignatureMismatchError",
46
+ SIGNATURE_NOT_FOUND_ERROR = "SignatureNotFoundError",
47
+ SIGNATURE_INVALID_ERROR = "SignatureInvalidError",
48
+ SIGNATURE_EXPIRED_ERROR = "SignatureExpiredError",
49
+ SIGNING_KEY_NOT_FOUND_ERROR = "SigningKeyNotFoundError",
50
+ PLATFORM_ERROR = "PlatformError",
51
+ SIGNATURE_VERSION_INVALID_ERROR = "SignatureVersionInvalidError"
52
+ }
53
+
54
+ declare enum HttpHeaderKeysEnum {
55
+ NOVU_SIGNATURE = "novu-signature",
56
+ NOVU_ANONYMOUS = "novu-anonymous",
57
+ NOVU_SIGNATURE_DEPRECATED = "x-novu-signature",
58
+ NOVU_ANONYMOUS_DEPRECATED = "x-novu-anonymous",
59
+ NOVU_FRAMEWORK_SDK = "novu-framework-sdk",
60
+ NOVU_FRAMEWORK_API = "novu-framework-api",
61
+ NOVU_FRAMEWORK_VERSION = "novu-framework-version",
62
+ USER_AGENT = "user-agent",
63
+ CONTENT_TYPE = "content-type",
64
+ ACCESS_CONTROL_ALLOW_ORIGIN = "access-control-allow-origin",
65
+ ACCESS_CONTROL_ALLOW_METHODS = "access-control-allow-methods",
66
+ ACCESS_CONTROL_ALLOW_HEADERS = "access-control-allow-headers",
67
+ ACCESS_CONTROL_MAX_AGE = "access-control-max-age"
68
+ }
69
+
70
+ declare enum HttpMethodEnum {
71
+ POST = "POST",
72
+ GET = "GET",
73
+ OPTIONS = "OPTIONS"
74
+ }
75
+
76
+ declare enum HttpQueryKeysEnum {
77
+ WORKFLOW_ID = "workflowId",
78
+ STEP_ID = "stepId",
79
+ ACTION = "action",
80
+ SOURCE = "source"
81
+ }
82
+
83
+ declare enum HttpStatusEnum {
84
+ CONTINUE = 100,
85
+ SWITCHING_PROTOCOLS = 101,
86
+ PROCESSING = 102,
87
+ EARLYHINTS = 103,
88
+ OK = 200,
89
+ CREATED = 201,
90
+ ACCEPTED = 202,
91
+ NON_AUTHORITATIVE_INFORMATION = 203,
92
+ NO_CONTENT = 204,
93
+ RESET_CONTENT = 205,
94
+ PARTIAL_CONTENT = 206,
95
+ AMBIGUOUS = 300,
96
+ MOVED_PERMANENTLY = 301,
97
+ FOUND = 302,
98
+ SEE_OTHER = 303,
99
+ NOT_MODIFIED = 304,
100
+ TEMPORARY_REDIRECT = 307,
101
+ PERMANENT_REDIRECT = 308,
102
+ BAD_REQUEST = 400,
103
+ UNAUTHORIZED = 401,
104
+ PAYMENT_REQUIRED = 402,
105
+ FORBIDDEN = 403,
106
+ NOT_FOUND = 404,
107
+ METHOD_NOT_ALLOWED = 405,
108
+ NOT_ACCEPTABLE = 406,
109
+ PROXY_AUTHENTICATION_REQUIRED = 407,
110
+ REQUEST_TIMEOUT = 408,
111
+ CONFLICT = 409,
112
+ GONE = 410,
113
+ LENGTH_REQUIRED = 411,
114
+ PRECONDITION_FAILED = 412,
115
+ PAYLOAD_TOO_LARGE = 413,
116
+ URI_TOO_LONG = 414,
117
+ UNSUPPORTED_MEDIA_TYPE = 415,
118
+ REQUESTED_RANGE_NOT_SATISFIABLE = 416,
119
+ EXPECTATION_FAILED = 417,
120
+ I_AM_A_TEAPOT = 418,
121
+ MISDIRECTED = 421,
122
+ UNPROCESSABLE_ENTITY = 422,
123
+ FAILED_DEPENDENCY = 424,
124
+ PRECONDITION_REQUIRED = 428,
125
+ TOO_MANY_REQUESTS = 429,
126
+ INTERNAL_SERVER_ERROR = 500,
127
+ NOT_IMPLEMENTED = 501,
128
+ BAD_GATEWAY = 502,
129
+ SERVICE_UNAVAILABLE = 503,
130
+ GATEWAY_TIMEOUT = 504,
131
+ HTTP_VERSION_NOT_SUPPORTED = 505
132
+ }
133
+ declare const RETRYABLE_ERROR_STATUS_CODES: HttpStatusEnum[];
134
+
135
+ declare enum ResourceEnum {
136
+ WORKFLOW = "workflow",
137
+ PROVIDER = "provider",
138
+ STEP = "step"
139
+ }
140
+
141
+ /**
142
+ * Cron expression helper.
143
+ */
144
+ declare enum CronExpression {
145
+ EVERY_SECOND = "* * * * * *",
146
+ EVERY_5_SECONDS = "*/5 * * * * *",
147
+ EVERY_10_SECONDS = "*/10 * * * * *",
148
+ EVERY_30_SECONDS = "*/30 * * * * *",
149
+ EVERY_MINUTE = "*/1 * * * *",
150
+ EVERY_5_MINUTES = "0 */5 * * * *",
151
+ EVERY_10_MINUTES = "0 */10 * * * *",
152
+ EVERY_30_MINUTES = "0 */30 * * * *",
153
+ EVERY_HOUR = "0 0-23/1 * * *",
154
+ EVERY_2_HOURS = "0 0-23/2 * * *",
155
+ EVERY_3_HOURS = "0 0-23/3 * * *",
156
+ EVERY_4_HOURS = "0 0-23/4 * * *",
157
+ EVERY_5_HOURS = "0 0-23/5 * * *",
158
+ EVERY_6_HOURS = "0 0-23/6 * * *",
159
+ EVERY_7_HOURS = "0 0-23/7 * * *",
160
+ EVERY_8_HOURS = "0 0-23/8 * * *",
161
+ EVERY_9_HOURS = "0 0-23/9 * * *",
162
+ EVERY_10_HOURS = "0 0-23/10 * * *",
163
+ EVERY_11_HOURS = "0 0-23/11 * * *",
164
+ EVERY_12_HOURS = "0 0-23/12 * * *",
165
+ EVERY_DAY_AT_1AM = "0 01 * * *",
166
+ EVERY_DAY_AT_2AM = "0 02 * * *",
167
+ EVERY_DAY_AT_3AM = "0 03 * * *",
168
+ EVERY_DAY_AT_4AM = "0 04 * * *",
169
+ EVERY_DAY_AT_5AM = "0 05 * * *",
170
+ EVERY_DAY_AT_6AM = "0 06 * * *",
171
+ EVERY_DAY_AT_7AM = "0 07 * * *",
172
+ EVERY_DAY_AT_8AM = "0 08 * * *",
173
+ EVERY_DAY_AT_9AM = "0 09 * * *",
174
+ EVERY_DAY_AT_10AM = "0 10 * * *",
175
+ EVERY_DAY_AT_11AM = "0 11 * * *",
176
+ EVERY_DAY_AT_NOON = "0 12 * * *",
177
+ EVERY_DAY_AT_1PM = "0 13 * * *",
178
+ EVERY_DAY_AT_2PM = "0 14 * * *",
179
+ EVERY_DAY_AT_3PM = "0 15 * * *",
180
+ EVERY_DAY_AT_4PM = "0 16 * * *",
181
+ EVERY_DAY_AT_5PM = "0 17 * * *",
182
+ EVERY_DAY_AT_6PM = "0 18 * * *",
183
+ EVERY_DAY_AT_7PM = "0 19 * * *",
184
+ EVERY_DAY_AT_8PM = "0 20 * * *",
185
+ EVERY_DAY_AT_9PM = "0 21 * * *",
186
+ EVERY_DAY_AT_10PM = "0 22 * * *",
187
+ EVERY_DAY_AT_11PM = "0 23 * * *",
188
+ EVERY_DAY_AT_MIDNIGHT = "0 0 * * *",
189
+ EVERY_WEEK = "0 0 * * 0",
190
+ EVERY_WEEKDAY = "0 0 * * 1-5",
191
+ EVERY_WEEKEND = "0 0 * * 6,0",
192
+ EVERY_1ST_DAY_OF_MONTH_AT_MIDNIGHT = "0 0 1 * *",
193
+ EVERY_1ST_DAY_OF_MONTH_AT_NOON = "0 12 1 * *",
194
+ EVERY_2ND_HOUR = "0 */2 * * *",
195
+ EVERY_2ND_HOUR_FROM_1AM_THROUGH_11PM = "0 1-23/2 * * *",
196
+ EVERY_2ND_MONTH = "0 0 1 */2 *",
197
+ EVERY_QUARTER = "0 0 1 */3 *",
198
+ EVERY_6_MONTHS = "0 0 1 */6 *",
199
+ EVERY_YEAR = "0 0 1 0 *",
200
+ EVERY_30_MINUTES_BETWEEN_9AM_AND_5PM = "0 */30 9-17 * * *",
201
+ EVERY_30_MINUTES_BETWEEN_9AM_AND_6PM = "0 */30 9-18 * * *",
202
+ EVERY_30_MINUTES_BETWEEN_10AM_AND_7PM = "0 */30 10-19 * * *",
203
+ MONDAY_TO_FRIDAY_AT_1AM = "0 0 01 * * 1-5",
204
+ MONDAY_TO_FRIDAY_AT_2AM = "0 0 02 * * 1-5",
205
+ MONDAY_TO_FRIDAY_AT_3AM = "0 0 03 * * 1-5",
206
+ MONDAY_TO_FRIDAY_AT_4AM = "0 0 04 * * 1-5",
207
+ MONDAY_TO_FRIDAY_AT_5AM = "0 0 05 * * 1-5",
208
+ MONDAY_TO_FRIDAY_AT_6AM = "0 0 06 * * 1-5",
209
+ MONDAY_TO_FRIDAY_AT_7AM = "0 0 07 * * 1-5",
210
+ MONDAY_TO_FRIDAY_AT_8AM = "0 0 08 * * 1-5",
211
+ MONDAY_TO_FRIDAY_AT_9AM = "0 0 09 * * 1-5",
212
+ MONDAY_TO_FRIDAY_AT_09_30AM = "0 30 09 * * 1-5",
213
+ MONDAY_TO_FRIDAY_AT_10AM = "0 0 10 * * 1-5",
214
+ MONDAY_TO_FRIDAY_AT_11AM = "0 0 11 * * 1-5",
215
+ MONDAY_TO_FRIDAY_AT_11_30AM = "0 30 11 * * 1-5",
216
+ MONDAY_TO_FRIDAY_AT_12PM = "0 0 12 * * 1-5",
217
+ MONDAY_TO_FRIDAY_AT_1PM = "0 0 13 * * 1-5",
218
+ MONDAY_TO_FRIDAY_AT_2PM = "0 0 14 * * 1-5",
219
+ MONDAY_TO_FRIDAY_AT_3PM = "0 0 15 * * 1-5",
220
+ MONDAY_TO_FRIDAY_AT_4PM = "0 0 16 * * 1-5",
221
+ MONDAY_TO_FRIDAY_AT_5PM = "0 0 17 * * 1-5",
222
+ MONDAY_TO_FRIDAY_AT_6PM = "0 0 18 * * 1-5",
223
+ MONDAY_TO_FRIDAY_AT_7PM = "0 0 19 * * 1-5",
224
+ MONDAY_TO_FRIDAY_AT_8PM = "0 0 20 * * 1-5",
225
+ MONDAY_TO_FRIDAY_AT_9PM = "0 0 21 * * 1-5",
226
+ MONDAY_TO_FRIDAY_AT_10PM = "0 0 22 * * 1-5",
227
+ MONDAY_TO_FRIDAY_AT_11PM = "0 0 23 * * 1-5"
228
+ }
229
+
230
+ type ValidateFunction<T = unknown> = ValidateFunction$1<T> | ((data: T) => ParseReturnType<T>);
231
+ type ValidationError = {
232
+ path: string;
233
+ message: string;
234
+ };
235
+ type ValidateResult<T> = {
236
+ success: false;
237
+ errors: ValidationError[];
238
+ } | {
239
+ success: true;
240
+ data: T;
241
+ };
242
+ interface Validator<T_Schema extends Schema> {
243
+ validate: <T_Data>(data: T_Data, schema: T_Schema) => Promise<ValidateResult<T_Data>>;
244
+ isSchema: (schema: Schema) => schema is T_Schema;
245
+ transformToJsonSchema: (schema: T_Schema) => JsonSchema;
246
+ }
247
+
248
+ /**
249
+ * Define a new notification workflow.
250
+ */
251
+ declare function workflow<T_PayloadSchema extends Schema, T_ControlSchema extends Schema, T_Payload = FromSchema<T_PayloadSchema>, T_Control = FromSchema<T_ControlSchema>>(workflowId: string, execute: Execute<T_Payload, T_Control>, workflowOptions?: WorkflowOptions<T_PayloadSchema, T_ControlSchema>): DiscoverWorkflowOutput;
252
+
253
+ export { CronExpression, DiscoverWorkflowOutput, ErrorCodeEnum, Execute, FromSchema, GetActionEnum, HttpHeaderKeysEnum, HttpMethodEnum, HttpQueryKeysEnum, HttpStatusEnum, JsonSchema, NovuApiEndpointsEnum, PostActionEnum, RETRYABLE_ERROR_STATUS_CODES, ResourceEnum, SIGNATURE_TIMESTAMP_TOLERANCE, SIGNATURE_TIMESTAMP_TOLERANCE_MINUTES, Schema, type ValidateFunction, type ValidateResult, type ValidationError, type Validator, WorkflowOptions, workflow };