@novu/framework 0.24.3-alpha.8 → 2.0.0-canary.0

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