@solytude/listmonk 1.0.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/LICENSE +21 -0
- package/README.md +542 -0
- package/dist/chunk-saezhne8.js +14 -0
- package/dist/chunk-saezhne8.js.map +9 -0
- package/dist/client.d.ts +430 -0
- package/dist/errors/api.d.ts +178 -0
- package/dist/errors/base.d.ts +47 -0
- package/dist/errors/configuration.d.ts +49 -0
- package/dist/errors/index.d.ts +13 -0
- package/dist/errors/network.d.ts +69 -0
- package/dist/errors/validation.d.ts +57 -0
- package/dist/http/auth.d.ts +39 -0
- package/dist/http/client.d.ts +149 -0
- package/dist/http/hooks.d.ts +90 -0
- package/dist/http/index.d.ts +10 -0
- package/dist/http/resource.d.ts +100 -0
- package/dist/http/sse.d.ts +36 -0
- package/dist/http/url.d.ts +51 -0
- package/dist/index.d.ts +64 -0
- package/dist/index.js +16039 -0
- package/dist/index.js.map +120 -0
- package/dist/resources/admin/admin.d.ts +92 -0
- package/dist/resources/admin/index.d.ts +10 -0
- package/dist/resources/admin/schemas.d.ts +23 -0
- package/dist/resources/admin/types.d.ts +29 -0
- package/dist/resources/bounces/bounces.d.ts +262 -0
- package/dist/resources/bounces/index.d.ts +10 -0
- package/dist/resources/bounces/schemas.d.ts +86 -0
- package/dist/resources/bounces/types.d.ts +37 -0
- package/dist/resources/campaigns/campaigns.d.ts +339 -0
- package/dist/resources/campaigns/index.d.ts +10 -0
- package/dist/resources/campaigns/schemas.d.ts +374 -0
- package/dist/resources/campaigns/types.d.ts +111 -0
- package/dist/resources/dashboard/dashboard.d.ts +73 -0
- package/dist/resources/dashboard/index.d.ts +10 -0
- package/dist/resources/dashboard/schemas.d.ts +55 -0
- package/dist/resources/dashboard/types.d.ts +22 -0
- package/dist/resources/import/import.d.ts +215 -0
- package/dist/resources/import/index.d.ts +10 -0
- package/dist/resources/import/schemas.d.ts +109 -0
- package/dist/resources/import/types.d.ts +72 -0
- package/dist/resources/lists/index.d.ts +10 -0
- package/dist/resources/lists/lists.d.ts +180 -0
- package/dist/resources/lists/schemas.d.ts +176 -0
- package/dist/resources/lists/types.d.ts +56 -0
- package/dist/resources/maintenance/index.d.ts +10 -0
- package/dist/resources/maintenance/maintenance.d.ts +92 -0
- package/dist/resources/maintenance/schemas.d.ts +36 -0
- package/dist/resources/maintenance/types.d.ts +31 -0
- package/dist/resources/media/index.d.ts +10 -0
- package/dist/resources/media/media.d.ts +198 -0
- package/dist/resources/media/schemas.d.ts +48 -0
- package/dist/resources/media/types.d.ts +48 -0
- package/dist/resources/public/index.d.ts +10 -0
- package/dist/resources/public/public.d.ts +111 -0
- package/dist/resources/public/schemas.d.ts +52 -0
- package/dist/resources/public/types.d.ts +30 -0
- package/dist/resources/settings/index.d.ts +10 -0
- package/dist/resources/settings/schemas.d.ts +374 -0
- package/dist/resources/settings/settings.d.ts +106 -0
- package/dist/resources/settings/types.d.ts +78 -0
- package/dist/resources/subscribers/index.d.ts +10 -0
- package/dist/resources/subscribers/schemas.d.ts +360 -0
- package/dist/resources/subscribers/subscribers.d.ts +308 -0
- package/dist/resources/subscribers/types.d.ts +113 -0
- package/dist/resources/templates/index.d.ts +10 -0
- package/dist/resources/templates/schemas.d.ts +110 -0
- package/dist/resources/templates/templates.d.ts +225 -0
- package/dist/resources/templates/types.d.ts +45 -0
- package/dist/resources/tx/index.d.ts +10 -0
- package/dist/resources/tx/schemas.d.ts +67 -0
- package/dist/resources/tx/tx.d.ts +167 -0
- package/dist/resources/tx/types.d.ts +88 -0
- package/dist/schemas/common.d.ts +48 -0
- package/dist/schemas/index.d.ts +6 -0
- package/dist/testing/errors.d.ts +25 -0
- package/dist/testing/factories/bounce.d.ts +43 -0
- package/dist/testing/factories/campaign.d.ts +43 -0
- package/dist/testing/factories/common.d.ts +54 -0
- package/dist/testing/factories/index.d.ts +12 -0
- package/dist/testing/factories/list.d.ts +43 -0
- package/dist/testing/factories/media.d.ts +40 -0
- package/dist/testing/factories/subscriber.d.ts +43 -0
- package/dist/testing/factories/template.d.ts +40 -0
- package/dist/testing/index.d.ts +39 -0
- package/dist/testing/index.js +573 -0
- package/dist/testing/index.js.map +32 -0
- package/dist/testing/mock-client.d.ts +119 -0
- package/dist/testing/mock-function.d.ts +28 -0
- package/dist/testing/resources/admin.d.ts +20 -0
- package/dist/testing/resources/bounces.d.ts +22 -0
- package/dist/testing/resources/campaigns.d.ts +31 -0
- package/dist/testing/resources/dashboard.d.ts +17 -0
- package/dist/testing/resources/import.d.ts +19 -0
- package/dist/testing/resources/index.d.ts +18 -0
- package/dist/testing/resources/lists.d.ts +24 -0
- package/dist/testing/resources/maintenance.d.ts +18 -0
- package/dist/testing/resources/media.d.ts +21 -0
- package/dist/testing/resources/public.d.ts +18 -0
- package/dist/testing/resources/settings.d.ts +19 -0
- package/dist/testing/resources/subscribers.d.ts +33 -0
- package/dist/testing/resources/templates.d.ts +24 -0
- package/dist/testing/resources/tx.d.ts +16 -0
- package/dist/testing/types.d.ts +138 -0
- package/dist/types/config.d.ts +59 -0
- package/dist/types/index.d.ts +7 -0
- package/dist/types/pagination.d.ts +37 -0
- package/package.json +97 -0
|
@@ -0,0 +1,106 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Settings resource for managing server settings.
|
|
3
|
+
*
|
|
4
|
+
* @module resources/settings
|
|
5
|
+
*/
|
|
6
|
+
import { APIResource } from "../../http/resource";
|
|
7
|
+
import type { Settings, SettingsUpdateResponse, SmtpTestConfig, SmtpTestResult } from "./types";
|
|
8
|
+
/**
|
|
9
|
+
* Resource for managing listmonk server settings.
|
|
10
|
+
*
|
|
11
|
+
* Provides methods for reading and updating server configuration,
|
|
12
|
+
* as well as testing SMTP settings.
|
|
13
|
+
*
|
|
14
|
+
* @example
|
|
15
|
+
* ```typescript
|
|
16
|
+
* // Get all settings
|
|
17
|
+
* const settings = await client.settings.get();
|
|
18
|
+
*
|
|
19
|
+
* // Update settings
|
|
20
|
+
* const result = await client.settings.update({
|
|
21
|
+
* 'app.site_name': 'My Newsletter',
|
|
22
|
+
* ...settings,
|
|
23
|
+
* });
|
|
24
|
+
* ```
|
|
25
|
+
*/
|
|
26
|
+
export declare class SettingsResource extends APIResource {
|
|
27
|
+
/**
|
|
28
|
+
* Retrieves all server settings.
|
|
29
|
+
*
|
|
30
|
+
* Note: Sensitive fields (passwords, API keys) are masked in the response.
|
|
31
|
+
*
|
|
32
|
+
* @returns Complete settings object
|
|
33
|
+
*
|
|
34
|
+
* @example
|
|
35
|
+
* ```typescript
|
|
36
|
+
* const settings = await client.settings.getAll();
|
|
37
|
+
* console.log(`Site name: ${settings['app.site_name']}`);
|
|
38
|
+
* console.log(`SMTP host: ${settings.smtp[0].host}`);
|
|
39
|
+
* console.log(`SMTP password: ${settings.smtp[0].password}`); // ••••••••
|
|
40
|
+
* ```
|
|
41
|
+
*/
|
|
42
|
+
getAll(): Promise<Settings>;
|
|
43
|
+
/**
|
|
44
|
+
* Updates all server settings.
|
|
45
|
+
*
|
|
46
|
+
* Note: Empty password fields preserve existing database values.
|
|
47
|
+
* At least one enabled SMTP configuration is required.
|
|
48
|
+
*
|
|
49
|
+
* @param settings - Complete settings object with updates
|
|
50
|
+
* @returns Update result - `true` or `{ needs_restart: true }` if campaigns running
|
|
51
|
+
*
|
|
52
|
+
* @example
|
|
53
|
+
* ```typescript
|
|
54
|
+
* const settings = await client.settings.get();
|
|
55
|
+
* const result = await client.settings.update({
|
|
56
|
+
* ...settings,
|
|
57
|
+
* 'app.site_name': 'Updated Newsletter',
|
|
58
|
+
* });
|
|
59
|
+
*
|
|
60
|
+
* if (result === true) {
|
|
61
|
+
* console.log('Settings updated and applied');
|
|
62
|
+
* } else if (result.needs_restart) {
|
|
63
|
+
* console.log('Settings updated, restart required');
|
|
64
|
+
* }
|
|
65
|
+
* ```
|
|
66
|
+
*/
|
|
67
|
+
update(settings: Settings): Promise<SettingsUpdateResponse>;
|
|
68
|
+
/**
|
|
69
|
+
* Updates a single setting by key.
|
|
70
|
+
*
|
|
71
|
+
* @param key - Setting key (e.g., 'app.site_name')
|
|
72
|
+
* @param value - New value for the setting
|
|
73
|
+
* @returns `true` on success
|
|
74
|
+
*
|
|
75
|
+
* @example
|
|
76
|
+
* ```typescript
|
|
77
|
+
* await client.settings.updateByKey('app.site_name', 'New Site Name');
|
|
78
|
+
* ```
|
|
79
|
+
*/
|
|
80
|
+
updateByKey(key: string, value: unknown): Promise<true>;
|
|
81
|
+
/**
|
|
82
|
+
* Tests SMTP configuration by sending a test email.
|
|
83
|
+
*
|
|
84
|
+
* @param config - SMTP configuration to test
|
|
85
|
+
* @returns Array of log lines from the SMTP test
|
|
86
|
+
* @throws {ListmonkApiError} On SMTP failure (with log output)
|
|
87
|
+
*
|
|
88
|
+
* @example
|
|
89
|
+
* ```typescript
|
|
90
|
+
* const logs = await client.settings.testSmtp({
|
|
91
|
+
* host: 'smtp.example.com',
|
|
92
|
+
* port: 587,
|
|
93
|
+
* auth_protocol: 'login',
|
|
94
|
+
* username: 'user',
|
|
95
|
+
* password: 'secret',
|
|
96
|
+
* tls_type: 'STARTTLS',
|
|
97
|
+
* email: 'test@example.com',
|
|
98
|
+
* });
|
|
99
|
+
*
|
|
100
|
+
* for (const line of logs) {
|
|
101
|
+
* console.log(line);
|
|
102
|
+
* }
|
|
103
|
+
* ```
|
|
104
|
+
*/
|
|
105
|
+
testSmtp(config: SmtpTestConfig): Promise<SmtpTestResult>;
|
|
106
|
+
}
|
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* TypeScript types for settings module.
|
|
3
|
+
*
|
|
4
|
+
* All types are inferred from Zod schemas to ensure runtime
|
|
5
|
+
* validation matches compile-time types.
|
|
6
|
+
*
|
|
7
|
+
* @module resources/settings/types
|
|
8
|
+
*/
|
|
9
|
+
import type { z } from "zod";
|
|
10
|
+
import type { SmtpAuthProtocolSchema, TlsTypeSchema, UploadProviderSchema, CaptchaProviderSchema, ServerHealthSchema, ServerConfigSchema, SettingsSchema, SettingsUpdateResponseSchema, SmtpConfigSchema, MessengerConfigSchema, SmtpTestConfigSchema, SmtpTestResultSchema, SecurityCaptchaSchema, SecurityOidcSchema, BouncePostmarkSchema, BounceForwardEmailSchema, BounceBoxSchema } from "./schemas";
|
|
11
|
+
/**
|
|
12
|
+
* SMTP authentication protocol.
|
|
13
|
+
*/
|
|
14
|
+
export type SmtpAuthProtocol = z.infer<typeof SmtpAuthProtocolSchema>;
|
|
15
|
+
/**
|
|
16
|
+
* TLS configuration type.
|
|
17
|
+
*/
|
|
18
|
+
export type TlsType = z.infer<typeof TlsTypeSchema>;
|
|
19
|
+
/**
|
|
20
|
+
* Upload provider type.
|
|
21
|
+
*/
|
|
22
|
+
export type UploadProvider = z.infer<typeof UploadProviderSchema>;
|
|
23
|
+
/**
|
|
24
|
+
* CAPTCHA provider type.
|
|
25
|
+
*/
|
|
26
|
+
export type CaptchaProvider = z.infer<typeof CaptchaProviderSchema>;
|
|
27
|
+
/**
|
|
28
|
+
* Server health check response.
|
|
29
|
+
*/
|
|
30
|
+
export type ServerHealth = z.infer<typeof ServerHealthSchema>;
|
|
31
|
+
/**
|
|
32
|
+
* Server configuration response.
|
|
33
|
+
*/
|
|
34
|
+
export type ServerConfig = z.infer<typeof ServerConfigSchema>;
|
|
35
|
+
/**
|
|
36
|
+
* Complete settings object.
|
|
37
|
+
*/
|
|
38
|
+
export type Settings = z.infer<typeof SettingsSchema>;
|
|
39
|
+
/**
|
|
40
|
+
* Response from settings update.
|
|
41
|
+
*/
|
|
42
|
+
export type SettingsUpdateResponse = z.infer<typeof SettingsUpdateResponseSchema>;
|
|
43
|
+
/**
|
|
44
|
+
* SMTP server configuration.
|
|
45
|
+
*/
|
|
46
|
+
export type SmtpConfig = z.infer<typeof SmtpConfigSchema>;
|
|
47
|
+
/**
|
|
48
|
+
* Messenger configuration.
|
|
49
|
+
*/
|
|
50
|
+
export type MessengerConfig = z.infer<typeof MessengerConfigSchema>;
|
|
51
|
+
/**
|
|
52
|
+
* Security CAPTCHA configuration.
|
|
53
|
+
*/
|
|
54
|
+
export type SecurityCaptcha = z.infer<typeof SecurityCaptchaSchema>;
|
|
55
|
+
/**
|
|
56
|
+
* Security OIDC configuration.
|
|
57
|
+
*/
|
|
58
|
+
export type SecurityOidc = z.infer<typeof SecurityOidcSchema>;
|
|
59
|
+
/**
|
|
60
|
+
* Bounce Postmark configuration.
|
|
61
|
+
*/
|
|
62
|
+
export type BouncePostmark = z.infer<typeof BouncePostmarkSchema>;
|
|
63
|
+
/**
|
|
64
|
+
* Bounce Forward Email configuration.
|
|
65
|
+
*/
|
|
66
|
+
export type BounceForwardEmail = z.infer<typeof BounceForwardEmailSchema>;
|
|
67
|
+
/**
|
|
68
|
+
* Bounce mailbox configuration.
|
|
69
|
+
*/
|
|
70
|
+
export type BounceBox = z.infer<typeof BounceBoxSchema>;
|
|
71
|
+
/**
|
|
72
|
+
* SMTP test configuration request (input type).
|
|
73
|
+
*/
|
|
74
|
+
export type SmtpTestConfig = z.input<typeof SmtpTestConfigSchema>;
|
|
75
|
+
/**
|
|
76
|
+
* SMTP test result response.
|
|
77
|
+
*/
|
|
78
|
+
export type SmtpTestResult = z.infer<typeof SmtpTestResultSchema>;
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Subscribers resource module.
|
|
3
|
+
*
|
|
4
|
+
* Provides complete subscriber lifecycle management for the listmonk API.
|
|
5
|
+
*
|
|
6
|
+
* @module resources/subscribers
|
|
7
|
+
*/
|
|
8
|
+
export { SubscribersResource } from "./subscribers";
|
|
9
|
+
export type { Subscriber, SubscriberStatus, SubscriptionStatus, ListSubscription, BounceRecord, BounceType, BounceCampaign, SubscriberAttribs, CreateSubscriberRequest, UpdateSubscriberRequest, ListSubscribersOptions, ListSubscribersResponse, ModifyListsRequest, ModifyListsForListRequest, ModifyListsByQueryRequest, QueryOperationRequest, BulkOperationResponse, SubscriberExportResponse, SubscriberProfile, ExportSubscription, CampaignView, LinkClick, ListAction, } from "./types";
|
|
10
|
+
export { SubscriberSchema, SubscriberStatusSchema, SubscriptionStatusSchema, ListSubscriptionSchema, BounceRecordSchema, BounceTypeSchema, BounceCampaignSchema, SubscriberAttribsSchema, CreateSubscriberRequestSchema, UpdateSubscriberRequestSchema, ListSubscribersOptionsSchema, ListSubscribersResponseSchema, ModifyListsRequestSchema, ModifyListsForListRequestSchema, ModifyListsByQueryRequestSchema, QueryOperationRequestSchema, BulkOperationResponseSchema, SubscriberExportResponseSchema, ListActionSchema, } from "./schemas";
|
|
@@ -0,0 +1,360 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Zod schemas for subscriber-related requests and responses.
|
|
3
|
+
*
|
|
4
|
+
* @module resources/subscribers/schemas
|
|
5
|
+
*/
|
|
6
|
+
import { z } from "zod";
|
|
7
|
+
/**
|
|
8
|
+
* Subscriber account-level status.
|
|
9
|
+
*/
|
|
10
|
+
export declare const SubscriberStatusSchema: z.ZodEnum<{
|
|
11
|
+
enabled: "enabled";
|
|
12
|
+
disabled: "disabled";
|
|
13
|
+
blocklisted: "blocklisted";
|
|
14
|
+
}>;
|
|
15
|
+
/**
|
|
16
|
+
* Subscription status for a specific list.
|
|
17
|
+
*/
|
|
18
|
+
export declare const SubscriptionStatusSchema: z.ZodEnum<{
|
|
19
|
+
confirmed: "confirmed";
|
|
20
|
+
unconfirmed: "unconfirmed";
|
|
21
|
+
unsubscribed: "unsubscribed";
|
|
22
|
+
}>;
|
|
23
|
+
/**
|
|
24
|
+
* Actions for list membership modification.
|
|
25
|
+
*/
|
|
26
|
+
export declare const ListActionSchema: z.ZodEnum<{
|
|
27
|
+
add: "add";
|
|
28
|
+
remove: "remove";
|
|
29
|
+
unsubscribe: "unsubscribe";
|
|
30
|
+
}>;
|
|
31
|
+
export { BounceTypeSchema } from "../../schemas";
|
|
32
|
+
/**
|
|
33
|
+
* Custom subscriber attributes (flexible JSON object).
|
|
34
|
+
*/
|
|
35
|
+
export declare const SubscriberAttribsSchema: z.ZodRecord<z.ZodString, z.ZodUnknown>;
|
|
36
|
+
export { BounceCampaignSchema } from "../../schemas";
|
|
37
|
+
/**
|
|
38
|
+
* List subscription details within a subscriber.
|
|
39
|
+
*/
|
|
40
|
+
export declare const ListSubscriptionSchema: z.ZodObject<{
|
|
41
|
+
subscription_status: z.ZodEnum<{
|
|
42
|
+
confirmed: "confirmed";
|
|
43
|
+
unconfirmed: "unconfirmed";
|
|
44
|
+
unsubscribed: "unsubscribed";
|
|
45
|
+
}>;
|
|
46
|
+
id: z.ZodNumber;
|
|
47
|
+
uuid: z.ZodString;
|
|
48
|
+
name: z.ZodString;
|
|
49
|
+
type: z.ZodEnum<{
|
|
50
|
+
public: "public";
|
|
51
|
+
private: "private";
|
|
52
|
+
}>;
|
|
53
|
+
tags: z.ZodArray<z.ZodString>;
|
|
54
|
+
created_at: z.ZodString;
|
|
55
|
+
updated_at: z.ZodString;
|
|
56
|
+
}, z.core.$strip>;
|
|
57
|
+
/**
|
|
58
|
+
* Complete subscriber entity.
|
|
59
|
+
*/
|
|
60
|
+
export declare const SubscriberSchema: z.ZodObject<{
|
|
61
|
+
id: z.ZodNumber;
|
|
62
|
+
uuid: z.ZodString;
|
|
63
|
+
email: z.ZodString;
|
|
64
|
+
name: z.ZodString;
|
|
65
|
+
status: z.ZodEnum<{
|
|
66
|
+
enabled: "enabled";
|
|
67
|
+
disabled: "disabled";
|
|
68
|
+
blocklisted: "blocklisted";
|
|
69
|
+
}>;
|
|
70
|
+
attribs: z.ZodDefault<z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
|
|
71
|
+
lists: z.ZodDefault<z.ZodOptional<z.ZodArray<z.ZodObject<{
|
|
72
|
+
subscription_status: z.ZodEnum<{
|
|
73
|
+
confirmed: "confirmed";
|
|
74
|
+
unconfirmed: "unconfirmed";
|
|
75
|
+
unsubscribed: "unsubscribed";
|
|
76
|
+
}>;
|
|
77
|
+
id: z.ZodNumber;
|
|
78
|
+
uuid: z.ZodString;
|
|
79
|
+
name: z.ZodString;
|
|
80
|
+
type: z.ZodEnum<{
|
|
81
|
+
public: "public";
|
|
82
|
+
private: "private";
|
|
83
|
+
}>;
|
|
84
|
+
tags: z.ZodArray<z.ZodString>;
|
|
85
|
+
created_at: z.ZodString;
|
|
86
|
+
updated_at: z.ZodString;
|
|
87
|
+
}, z.core.$strip>>>>;
|
|
88
|
+
created_at: z.ZodString;
|
|
89
|
+
updated_at: z.ZodString;
|
|
90
|
+
}, z.core.$strip>;
|
|
91
|
+
/**
|
|
92
|
+
* Bounce record for email delivery failures.
|
|
93
|
+
*/
|
|
94
|
+
export declare const BounceRecordSchema: z.ZodObject<{
|
|
95
|
+
id: z.ZodNumber;
|
|
96
|
+
type: z.ZodEnum<{
|
|
97
|
+
hard: "hard";
|
|
98
|
+
soft: "soft";
|
|
99
|
+
}>;
|
|
100
|
+
source: z.ZodString;
|
|
101
|
+
meta: z.ZodDefault<z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
|
|
102
|
+
created_at: z.ZodString;
|
|
103
|
+
email: z.ZodString;
|
|
104
|
+
subscriber_uuid: z.ZodString;
|
|
105
|
+
subscriber_id: z.ZodNumber;
|
|
106
|
+
campaign: z.ZodOptional<z.ZodNullable<z.ZodObject<{
|
|
107
|
+
id: z.ZodNumber;
|
|
108
|
+
name: z.ZodString;
|
|
109
|
+
}, z.core.$strip>>>;
|
|
110
|
+
}, z.core.$strip>;
|
|
111
|
+
/**
|
|
112
|
+
* Request to create a new subscriber.
|
|
113
|
+
*
|
|
114
|
+
* Note: Status can only be 'enabled' or 'blocklisted' on creation.
|
|
115
|
+
* 'disabled' status must be set via update.
|
|
116
|
+
*/
|
|
117
|
+
export declare const CreateSubscriberRequestSchema: z.ZodObject<{
|
|
118
|
+
email: z.ZodString;
|
|
119
|
+
name: z.ZodString;
|
|
120
|
+
status: z.ZodEnum<{
|
|
121
|
+
enabled: "enabled";
|
|
122
|
+
blocklisted: "blocklisted";
|
|
123
|
+
}>;
|
|
124
|
+
lists: z.ZodDefault<z.ZodOptional<z.ZodArray<z.ZodNumber>>>;
|
|
125
|
+
attribs: z.ZodDefault<z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
|
|
126
|
+
preconfirm_subscriptions: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
|
|
127
|
+
}, z.core.$strip>;
|
|
128
|
+
/**
|
|
129
|
+
* Request to update an existing subscriber.
|
|
130
|
+
*
|
|
131
|
+
* Note: The lists array replaces existing memberships entirely.
|
|
132
|
+
*/
|
|
133
|
+
export declare const UpdateSubscriberRequestSchema: z.ZodObject<{
|
|
134
|
+
email: z.ZodString;
|
|
135
|
+
name: z.ZodString;
|
|
136
|
+
status: z.ZodEnum<{
|
|
137
|
+
enabled: "enabled";
|
|
138
|
+
disabled: "disabled";
|
|
139
|
+
blocklisted: "blocklisted";
|
|
140
|
+
}>;
|
|
141
|
+
lists: z.ZodArray<z.ZodNumber>;
|
|
142
|
+
attribs: z.ZodDefault<z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
|
|
143
|
+
preconfirm_subscriptions: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
|
|
144
|
+
}, z.core.$strip>;
|
|
145
|
+
/**
|
|
146
|
+
* Options for listing subscribers.
|
|
147
|
+
*/
|
|
148
|
+
export declare const ListSubscribersOptionsSchema: z.ZodObject<{
|
|
149
|
+
page: z.ZodDefault<z.ZodOptional<z.ZodNumber>>;
|
|
150
|
+
per_page: z.ZodDefault<z.ZodOptional<z.ZodNumber>>;
|
|
151
|
+
search: z.ZodOptional<z.ZodString>;
|
|
152
|
+
query: z.ZodOptional<z.ZodString>;
|
|
153
|
+
list_id: z.ZodOptional<z.ZodArray<z.ZodNumber>>;
|
|
154
|
+
subscription_status: z.ZodOptional<z.ZodEnum<{
|
|
155
|
+
confirmed: "confirmed";
|
|
156
|
+
unconfirmed: "unconfirmed";
|
|
157
|
+
unsubscribed: "unsubscribed";
|
|
158
|
+
}>>;
|
|
159
|
+
order_by: z.ZodOptional<z.ZodEnum<{
|
|
160
|
+
name: "name";
|
|
161
|
+
created_at: "created_at";
|
|
162
|
+
updated_at: "updated_at";
|
|
163
|
+
status: "status";
|
|
164
|
+
}>>;
|
|
165
|
+
order: z.ZodOptional<z.ZodEnum<{
|
|
166
|
+
ASC: "ASC";
|
|
167
|
+
DESC: "DESC";
|
|
168
|
+
}>>;
|
|
169
|
+
}, z.core.$strip>;
|
|
170
|
+
/**
|
|
171
|
+
* Request to modify list memberships for subscribers by ID.
|
|
172
|
+
*
|
|
173
|
+
* Note: `status` is required when action is 'add'.
|
|
174
|
+
*/
|
|
175
|
+
export declare const ModifyListsRequestSchema: z.ZodObject<{
|
|
176
|
+
ids: z.ZodArray<z.ZodNumber>;
|
|
177
|
+
action: z.ZodEnum<{
|
|
178
|
+
add: "add";
|
|
179
|
+
remove: "remove";
|
|
180
|
+
unsubscribe: "unsubscribe";
|
|
181
|
+
}>;
|
|
182
|
+
target_list_ids: z.ZodArray<z.ZodNumber>;
|
|
183
|
+
status: z.ZodOptional<z.ZodEnum<{
|
|
184
|
+
confirmed: "confirmed";
|
|
185
|
+
unconfirmed: "unconfirmed";
|
|
186
|
+
unsubscribed: "unsubscribed";
|
|
187
|
+
}>>;
|
|
188
|
+
}, z.core.$strip>;
|
|
189
|
+
/**
|
|
190
|
+
* Request to modify list memberships for a specific list.
|
|
191
|
+
*/
|
|
192
|
+
export declare const ModifyListsForListRequestSchema: z.ZodObject<{
|
|
193
|
+
ids: z.ZodArray<z.ZodNumber>;
|
|
194
|
+
action: z.ZodEnum<{
|
|
195
|
+
add: "add";
|
|
196
|
+
remove: "remove";
|
|
197
|
+
unsubscribe: "unsubscribe";
|
|
198
|
+
}>;
|
|
199
|
+
status: z.ZodOptional<z.ZodEnum<{
|
|
200
|
+
confirmed: "confirmed";
|
|
201
|
+
unconfirmed: "unconfirmed";
|
|
202
|
+
unsubscribed: "unsubscribed";
|
|
203
|
+
}>>;
|
|
204
|
+
}, z.core.$strip>;
|
|
205
|
+
/**
|
|
206
|
+
* Request to modify list memberships by SQL-style query.
|
|
207
|
+
*/
|
|
208
|
+
export declare const ModifyListsByQueryRequestSchema: z.ZodObject<{
|
|
209
|
+
query: z.ZodString;
|
|
210
|
+
action: z.ZodEnum<{
|
|
211
|
+
add: "add";
|
|
212
|
+
remove: "remove";
|
|
213
|
+
unsubscribe: "unsubscribe";
|
|
214
|
+
}>;
|
|
215
|
+
target_list_ids: z.ZodArray<z.ZodNumber>;
|
|
216
|
+
status: z.ZodOptional<z.ZodEnum<{
|
|
217
|
+
confirmed: "confirmed";
|
|
218
|
+
unconfirmed: "unconfirmed";
|
|
219
|
+
unsubscribed: "unsubscribed";
|
|
220
|
+
}>>;
|
|
221
|
+
}, z.core.$strip>;
|
|
222
|
+
/**
|
|
223
|
+
* Request for query-based operations (delete, blocklist).
|
|
224
|
+
*/
|
|
225
|
+
export declare const QueryOperationRequestSchema: z.ZodObject<{
|
|
226
|
+
query: z.ZodString;
|
|
227
|
+
}, z.core.$strip>;
|
|
228
|
+
export { BulkDeleteIdsSchema } from "../../schemas";
|
|
229
|
+
/**
|
|
230
|
+
* Schema for bulk blocklist by IDs.
|
|
231
|
+
*/
|
|
232
|
+
export declare const BulkBlocklistRequestSchema: z.ZodObject<{
|
|
233
|
+
ids: z.ZodArray<z.ZodNumber>;
|
|
234
|
+
}, z.core.$strip>;
|
|
235
|
+
/**
|
|
236
|
+
* Paginated list of subscribers response.
|
|
237
|
+
*/
|
|
238
|
+
export declare const ListSubscribersResponseSchema: z.ZodObject<{
|
|
239
|
+
results: z.ZodArray<z.ZodObject<{
|
|
240
|
+
id: z.ZodNumber;
|
|
241
|
+
uuid: z.ZodString;
|
|
242
|
+
email: z.ZodString;
|
|
243
|
+
name: z.ZodString;
|
|
244
|
+
status: z.ZodEnum<{
|
|
245
|
+
enabled: "enabled";
|
|
246
|
+
disabled: "disabled";
|
|
247
|
+
blocklisted: "blocklisted";
|
|
248
|
+
}>;
|
|
249
|
+
attribs: z.ZodDefault<z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
|
|
250
|
+
lists: z.ZodDefault<z.ZodOptional<z.ZodArray<z.ZodObject<{
|
|
251
|
+
subscription_status: z.ZodEnum<{
|
|
252
|
+
confirmed: "confirmed";
|
|
253
|
+
unconfirmed: "unconfirmed";
|
|
254
|
+
unsubscribed: "unsubscribed";
|
|
255
|
+
}>;
|
|
256
|
+
id: z.ZodNumber;
|
|
257
|
+
uuid: z.ZodString;
|
|
258
|
+
name: z.ZodString;
|
|
259
|
+
type: z.ZodEnum<{
|
|
260
|
+
public: "public";
|
|
261
|
+
private: "private";
|
|
262
|
+
}>;
|
|
263
|
+
tags: z.ZodArray<z.ZodString>;
|
|
264
|
+
created_at: z.ZodString;
|
|
265
|
+
updated_at: z.ZodString;
|
|
266
|
+
}, z.core.$strip>>>>;
|
|
267
|
+
created_at: z.ZodString;
|
|
268
|
+
updated_at: z.ZodString;
|
|
269
|
+
}, z.core.$strip>>;
|
|
270
|
+
total: z.ZodNumber;
|
|
271
|
+
per_page: z.ZodNumber;
|
|
272
|
+
page: z.ZodNumber;
|
|
273
|
+
}, z.core.$strip>;
|
|
274
|
+
/**
|
|
275
|
+
* Response for bulk operations.
|
|
276
|
+
*/
|
|
277
|
+
export declare const BulkOperationResponseSchema: z.ZodObject<{
|
|
278
|
+
count: z.ZodNumber;
|
|
279
|
+
}, z.core.$strip>;
|
|
280
|
+
/**
|
|
281
|
+
* Subscriber profile in export.
|
|
282
|
+
*/
|
|
283
|
+
export declare const SubscriberProfileSchema: z.ZodObject<{
|
|
284
|
+
email: z.ZodString;
|
|
285
|
+
name: z.ZodString;
|
|
286
|
+
attribs: z.ZodRecord<z.ZodString, z.ZodUnknown>;
|
|
287
|
+
status: z.ZodEnum<{
|
|
288
|
+
enabled: "enabled";
|
|
289
|
+
disabled: "disabled";
|
|
290
|
+
blocklisted: "blocklisted";
|
|
291
|
+
}>;
|
|
292
|
+
created_at: z.ZodString;
|
|
293
|
+
updated_at: z.ZodString;
|
|
294
|
+
}, z.core.$strip>;
|
|
295
|
+
/**
|
|
296
|
+
* Subscription in export (private list names masked).
|
|
297
|
+
*/
|
|
298
|
+
export declare const ExportSubscriptionSchema: z.ZodObject<{
|
|
299
|
+
name: z.ZodString;
|
|
300
|
+
subscription_status: z.ZodEnum<{
|
|
301
|
+
confirmed: "confirmed";
|
|
302
|
+
unconfirmed: "unconfirmed";
|
|
303
|
+
unsubscribed: "unsubscribed";
|
|
304
|
+
}>;
|
|
305
|
+
created_at: z.ZodString;
|
|
306
|
+
}, z.core.$strip>;
|
|
307
|
+
/**
|
|
308
|
+
* Campaign view in export.
|
|
309
|
+
*/
|
|
310
|
+
export declare const CampaignViewSchema: z.ZodObject<{
|
|
311
|
+
id: z.ZodNumber;
|
|
312
|
+
name: z.ZodString;
|
|
313
|
+
viewed_at: z.ZodString;
|
|
314
|
+
}, z.core.$strip>;
|
|
315
|
+
/**
|
|
316
|
+
* Link click in export.
|
|
317
|
+
*/
|
|
318
|
+
export declare const LinkClickSchema: z.ZodObject<{
|
|
319
|
+
url: z.ZodString;
|
|
320
|
+
campaign_id: z.ZodNumber;
|
|
321
|
+
campaign_name: z.ZodString;
|
|
322
|
+
clicked_at: z.ZodString;
|
|
323
|
+
}, z.core.$strip>;
|
|
324
|
+
/**
|
|
325
|
+
* Complete subscriber export response.
|
|
326
|
+
*/
|
|
327
|
+
export declare const SubscriberExportResponseSchema: z.ZodObject<{
|
|
328
|
+
profile: z.ZodObject<{
|
|
329
|
+
email: z.ZodString;
|
|
330
|
+
name: z.ZodString;
|
|
331
|
+
attribs: z.ZodRecord<z.ZodString, z.ZodUnknown>;
|
|
332
|
+
status: z.ZodEnum<{
|
|
333
|
+
enabled: "enabled";
|
|
334
|
+
disabled: "disabled";
|
|
335
|
+
blocklisted: "blocklisted";
|
|
336
|
+
}>;
|
|
337
|
+
created_at: z.ZodString;
|
|
338
|
+
updated_at: z.ZodString;
|
|
339
|
+
}, z.core.$strip>;
|
|
340
|
+
subscriptions: z.ZodArray<z.ZodObject<{
|
|
341
|
+
name: z.ZodString;
|
|
342
|
+
subscription_status: z.ZodEnum<{
|
|
343
|
+
confirmed: "confirmed";
|
|
344
|
+
unconfirmed: "unconfirmed";
|
|
345
|
+
unsubscribed: "unsubscribed";
|
|
346
|
+
}>;
|
|
347
|
+
created_at: z.ZodString;
|
|
348
|
+
}, z.core.$strip>>;
|
|
349
|
+
campaign_views: z.ZodArray<z.ZodObject<{
|
|
350
|
+
id: z.ZodNumber;
|
|
351
|
+
name: z.ZodString;
|
|
352
|
+
viewed_at: z.ZodString;
|
|
353
|
+
}, z.core.$strip>>;
|
|
354
|
+
link_clicks: z.ZodArray<z.ZodObject<{
|
|
355
|
+
url: z.ZodString;
|
|
356
|
+
campaign_id: z.ZodNumber;
|
|
357
|
+
campaign_name: z.ZodString;
|
|
358
|
+
clicked_at: z.ZodString;
|
|
359
|
+
}, z.core.$strip>>;
|
|
360
|
+
}, z.core.$strip>;
|