claude-plugin-wordpress-manager 2.3.1 → 2.6.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.
Files changed (65) hide show
  1. package/.claude-plugin/plugin.json +15 -3
  2. package/CHANGELOG.md +62 -0
  3. package/agents/wp-content-strategist.md +104 -0
  4. package/agents/wp-distribution-manager.md +98 -0
  5. package/docs/GUIDE.md +183 -23
  6. package/docs/plans/2026-03-01-tier3-wcop-design.md +373 -0
  7. package/docs/plans/2026-03-01-tier3-wcop-implementation.md +915 -0
  8. package/hooks/hooks.json +18 -0
  9. package/package.json +18 -3
  10. package/servers/wp-rest-bridge/build/tools/buffer.d.ts +3 -0
  11. package/servers/wp-rest-bridge/build/tools/buffer.js +205 -0
  12. package/servers/wp-rest-bridge/build/tools/comments.d.ts +6 -6
  13. package/servers/wp-rest-bridge/build/tools/gsc.d.ts +3 -0
  14. package/servers/wp-rest-bridge/build/tools/gsc.js +354 -0
  15. package/servers/wp-rest-bridge/build/tools/index.d.ts +38 -38
  16. package/servers/wp-rest-bridge/build/tools/index.js +12 -0
  17. package/servers/wp-rest-bridge/build/tools/mailchimp.d.ts +3 -0
  18. package/servers/wp-rest-bridge/build/tools/mailchimp.js +265 -0
  19. package/servers/wp-rest-bridge/build/tools/media.d.ts +2 -2
  20. package/servers/wp-rest-bridge/build/tools/multisite-sites.d.ts +2 -2
  21. package/servers/wp-rest-bridge/build/tools/plugin-repository.d.ts +1 -1
  22. package/servers/wp-rest-bridge/build/tools/search.d.ts +2 -2
  23. package/servers/wp-rest-bridge/build/tools/sendgrid.d.ts +3 -0
  24. package/servers/wp-rest-bridge/build/tools/sendgrid.js +255 -0
  25. package/servers/wp-rest-bridge/build/tools/unified-content.d.ts +8 -8
  26. package/servers/wp-rest-bridge/build/tools/unified-taxonomies.d.ts +4 -4
  27. package/servers/wp-rest-bridge/build/tools/users.d.ts +6 -6
  28. package/servers/wp-rest-bridge/build/tools/wc-coupons.d.ts +1 -1
  29. package/servers/wp-rest-bridge/build/tools/wc-customers.d.ts +3 -3
  30. package/servers/wp-rest-bridge/build/tools/wc-orders.d.ts +4 -4
  31. package/servers/wp-rest-bridge/build/tools/wc-products.d.ts +8 -8
  32. package/servers/wp-rest-bridge/build/tools/wc-webhooks.d.ts +4 -4
  33. package/servers/wp-rest-bridge/build/types.d.ts +122 -0
  34. package/servers/wp-rest-bridge/build/wordpress.d.ts +14 -0
  35. package/servers/wp-rest-bridge/build/wordpress.js +151 -0
  36. package/servers/wp-rest-bridge/package.json +1 -0
  37. package/skills/wordpress-router/references/decision-tree.md +8 -2
  38. package/skills/wp-content/SKILL.md +2 -0
  39. package/skills/wp-content-attribution/SKILL.md +2 -0
  40. package/skills/wp-content-optimization/SKILL.md +172 -0
  41. package/skills/wp-content-optimization/references/content-freshness.md +234 -0
  42. package/skills/wp-content-optimization/references/headline-optimization.md +171 -0
  43. package/skills/wp-content-optimization/references/meta-optimization.md +243 -0
  44. package/skills/wp-content-optimization/references/readability-analysis.md +201 -0
  45. package/skills/wp-content-optimization/references/seo-content-scoring.md +245 -0
  46. package/skills/wp-content-optimization/scripts/content_optimization_inspect.mjs +237 -0
  47. package/skills/wp-content-repurposing/SKILL.md +1 -0
  48. package/skills/wp-monitoring/SKILL.md +1 -0
  49. package/skills/wp-programmatic-seo/SKILL.md +2 -0
  50. package/skills/wp-search-console/SKILL.md +121 -0
  51. package/skills/wp-search-console/references/competitor-gap-analysis.md +226 -0
  52. package/skills/wp-search-console/references/content-seo-feedback.md +181 -0
  53. package/skills/wp-search-console/references/gsc-setup.md +110 -0
  54. package/skills/wp-search-console/references/indexing-management.md +182 -0
  55. package/skills/wp-search-console/references/keyword-tracking.md +181 -0
  56. package/skills/wp-search-console/scripts/search_console_inspect.mjs +178 -0
  57. package/skills/wp-social-email/SKILL.md +152 -0
  58. package/skills/wp-social-email/references/audience-segmentation.md +173 -0
  59. package/skills/wp-social-email/references/buffer-social-publishing.md +124 -0
  60. package/skills/wp-social-email/references/content-to-distribution.md +156 -0
  61. package/skills/wp-social-email/references/distribution-analytics.md +208 -0
  62. package/skills/wp-social-email/references/mailchimp-integration.md +145 -0
  63. package/skills/wp-social-email/references/sendgrid-transactional.md +165 -0
  64. package/skills/wp-social-email/scripts/distribution_inspect.mjs +165 -0
  65. package/skills/wp-webhooks/SKILL.md +1 -0
@@ -11,18 +11,18 @@ declare const wpSearchSchema: z.ZodObject<{
11
11
  include_pagination: z.ZodOptional<z.ZodBoolean>;
12
12
  }, "strip", z.ZodTypeAny, {
13
13
  search: string;
14
+ type?: string | undefined;
14
15
  page?: number | undefined;
15
16
  per_page?: number | undefined;
16
- type?: string | undefined;
17
17
  _embed?: boolean | undefined;
18
18
  _fields?: string | undefined;
19
19
  include_pagination?: boolean | undefined;
20
20
  subtype?: string | undefined;
21
21
  }, {
22
22
  search: string;
23
+ type?: string | undefined;
23
24
  page?: number | undefined;
24
25
  per_page?: number | undefined;
25
- type?: string | undefined;
26
26
  _embed?: boolean | undefined;
27
27
  _fields?: string | undefined;
28
28
  include_pagination?: boolean | undefined;
@@ -0,0 +1,3 @@
1
+ import { Tool } from '@modelcontextprotocol/sdk/types.js';
2
+ export declare const sendgridTools: Tool[];
3
+ export declare const sendgridHandlers: Record<string, Function>;
@@ -0,0 +1,255 @@
1
+ import { makeSendGridRequest, hasSendGrid } from '../wordpress.js';
2
+ import { z } from 'zod';
3
+ // ── Zod Schemas ─────────────────────────────────────────────────
4
+ const sgSendEmailSchema = z.object({
5
+ to_email: z.string().describe('Recipient email address'),
6
+ to_name: z.string().optional().describe('Recipient name'),
7
+ from_email: z.string().describe('Sender email address'),
8
+ from_name: z.string().optional().describe('Sender name'),
9
+ subject: z.string().describe('Email subject line'),
10
+ content_type: z.string().optional().default('text/html')
11
+ .describe('Content MIME type (default: text/html)'),
12
+ content_value: z.string().describe('Email body content'),
13
+ template_id: z.string().optional()
14
+ .describe('SendGrid dynamic template ID (overrides content)'),
15
+ }).strict();
16
+ const sgListTemplatesSchema = z.object({
17
+ generations: z.enum(['legacy', 'dynamic']).optional()
18
+ .describe('Filter by template generation type'),
19
+ page_size: z.number().optional()
20
+ .describe('Number of templates per page'),
21
+ }).strict();
22
+ const sgGetTemplateSchema = z.object({
23
+ template_id: z.string().describe('SendGrid template ID'),
24
+ }).strict();
25
+ const sgListContactsSchema = z.object({
26
+ query: z.string().optional()
27
+ .describe('SGQL query string for filtering contacts'),
28
+ }).strict();
29
+ const sgAddContactsSchema = z.object({
30
+ contacts: z.array(z.object({
31
+ email: z.string().describe('Contact email address'),
32
+ first_name: z.string().optional().describe('Contact first name'),
33
+ last_name: z.string().optional().describe('Contact last name'),
34
+ custom_fields: z.record(z.any()).optional().describe('Custom field key-value pairs'),
35
+ })).describe('Array of contacts to add or update'),
36
+ }).strict();
37
+ const sgGetStatsSchema = z.object({
38
+ start_date: z.string().describe('Start date in YYYY-MM-DD format'),
39
+ end_date: z.string().optional().describe('End date in YYYY-MM-DD format'),
40
+ aggregated_by: z.enum(['day', 'week', 'month']).optional()
41
+ .describe('Aggregation period for stats'),
42
+ }).strict();
43
+ // ── Tool Definitions ────────────────────────────────────────────
44
+ export const sendgridTools = [
45
+ {
46
+ name: "sg_send_email",
47
+ description: "Sends a transactional email via SendGrid (DESTRUCTIVE — sends real email)",
48
+ inputSchema: {
49
+ type: "object",
50
+ properties: {
51
+ to_email: { type: "string", description: "Recipient email address" },
52
+ to_name: { type: "string", description: "Recipient name" },
53
+ from_email: { type: "string", description: "Sender email address" },
54
+ from_name: { type: "string", description: "Sender name" },
55
+ subject: { type: "string", description: "Email subject line" },
56
+ content_type: { type: "string", description: "Content MIME type (default: text/html)" },
57
+ content_value: { type: "string", description: "Email body content" },
58
+ template_id: { type: "string", description: "SendGrid dynamic template ID (overrides content)" },
59
+ },
60
+ required: ["to_email", "from_email", "subject", "content_value"],
61
+ },
62
+ },
63
+ {
64
+ name: "sg_list_templates",
65
+ description: "Lists all SendGrid email templates",
66
+ inputSchema: {
67
+ type: "object",
68
+ properties: {
69
+ generations: {
70
+ type: "string",
71
+ enum: ["legacy", "dynamic"],
72
+ description: "Filter by template generation type",
73
+ },
74
+ page_size: { type: "number", description: "Number of templates per page" },
75
+ },
76
+ },
77
+ },
78
+ {
79
+ name: "sg_get_template",
80
+ description: "Gets a specific SendGrid template with its versions",
81
+ inputSchema: {
82
+ type: "object",
83
+ properties: {
84
+ template_id: { type: "string", description: "SendGrid template ID" },
85
+ },
86
+ required: ["template_id"],
87
+ },
88
+ },
89
+ {
90
+ name: "sg_list_contacts",
91
+ description: "Lists SendGrid Marketing contacts with optional search",
92
+ inputSchema: {
93
+ type: "object",
94
+ properties: {
95
+ query: { type: "string", description: "SGQL query string for filtering contacts" },
96
+ },
97
+ },
98
+ },
99
+ {
100
+ name: "sg_add_contacts",
101
+ description: "Adds or updates contacts in SendGrid Marketing",
102
+ inputSchema: {
103
+ type: "object",
104
+ properties: {
105
+ contacts: {
106
+ type: "array",
107
+ items: {
108
+ type: "object",
109
+ properties: {
110
+ email: { type: "string", description: "Contact email address" },
111
+ first_name: { type: "string", description: "Contact first name" },
112
+ last_name: { type: "string", description: "Contact last name" },
113
+ custom_fields: { type: "object", description: "Custom field key-value pairs" },
114
+ },
115
+ required: ["email"],
116
+ },
117
+ description: "Array of contacts to add or update",
118
+ },
119
+ },
120
+ required: ["contacts"],
121
+ },
122
+ },
123
+ {
124
+ name: "sg_get_stats",
125
+ description: "Gets email delivery statistics for a date range",
126
+ inputSchema: {
127
+ type: "object",
128
+ properties: {
129
+ start_date: { type: "string", description: "Start date in YYYY-MM-DD format" },
130
+ end_date: { type: "string", description: "End date in YYYY-MM-DD format" },
131
+ aggregated_by: {
132
+ type: "string",
133
+ enum: ["day", "week", "month"],
134
+ description: "Aggregation period for stats",
135
+ },
136
+ },
137
+ required: ["start_date"],
138
+ },
139
+ },
140
+ ];
141
+ // ── Handlers ────────────────────────────────────────────────────
142
+ export const sendgridHandlers = {
143
+ sg_send_email: async (params) => {
144
+ if (!hasSendGrid()) {
145
+ return { toolResult: { isError: true, content: [{ type: "text", text: "SendGrid not configured. Add sendgrid_api_key to WP_SITES_CONFIG." }] } };
146
+ }
147
+ try {
148
+ const { to_email, to_name, from_email, from_name, subject, content_type, content_value, template_id } = params;
149
+ const body = {
150
+ personalizations: [{ to: [{ email: to_email, ...(to_name ? { name: to_name } : {}) }], subject }],
151
+ from: { email: from_email, ...(from_name ? { name: from_name } : {}) },
152
+ subject,
153
+ content: [{ type: content_type || 'text/html', value: content_value }],
154
+ };
155
+ if (template_id)
156
+ body.template_id = template_id;
157
+ const response = await makeSendGridRequest("POST", "mail/send", body);
158
+ return { toolResult: { content: [{ type: "text", text: JSON.stringify(response ?? { success: true, message: "Email sent successfully" }, null, 2) }] } };
159
+ }
160
+ catch (error) {
161
+ const errorMessage = error.response?.data?.errors?.[0]?.message || error.message;
162
+ return { toolResult: { isError: true, content: [{ type: "text", text: `Error sending email: ${errorMessage}` }] } };
163
+ }
164
+ },
165
+ sg_list_templates: async (params) => {
166
+ if (!hasSendGrid()) {
167
+ return { toolResult: { isError: true, content: [{ type: "text", text: "SendGrid not configured. Add sendgrid_api_key to WP_SITES_CONFIG." }] } };
168
+ }
169
+ try {
170
+ const { generations, page_size } = params;
171
+ const query = {};
172
+ if (generations)
173
+ query.generations = generations;
174
+ if (page_size !== undefined)
175
+ query.page_size = page_size;
176
+ const qs = Object.entries(query).map(([k, v]) => `${k}=${v}`).join('&');
177
+ const endpoint = `templates${qs ? '?' + qs : ''}`;
178
+ const response = await makeSendGridRequest("GET", endpoint);
179
+ return { toolResult: { content: [{ type: "text", text: JSON.stringify(response, null, 2) }] } };
180
+ }
181
+ catch (error) {
182
+ const errorMessage = error.response?.data?.errors?.[0]?.message || error.message;
183
+ return { toolResult: { isError: true, content: [{ type: "text", text: `Error listing templates: ${errorMessage}` }] } };
184
+ }
185
+ },
186
+ sg_get_template: async (params) => {
187
+ if (!hasSendGrid()) {
188
+ return { toolResult: { isError: true, content: [{ type: "text", text: "SendGrid not configured. Add sendgrid_api_key to WP_SITES_CONFIG." }] } };
189
+ }
190
+ try {
191
+ const { template_id } = params;
192
+ const response = await makeSendGridRequest("GET", `templates/${template_id}`);
193
+ return { toolResult: { content: [{ type: "text", text: JSON.stringify(response, null, 2) }] } };
194
+ }
195
+ catch (error) {
196
+ const errorMessage = error.response?.data?.errors?.[0]?.message || error.message;
197
+ return { toolResult: { isError: true, content: [{ type: "text", text: `Error getting template: ${errorMessage}` }] } };
198
+ }
199
+ },
200
+ sg_list_contacts: async (params) => {
201
+ if (!hasSendGrid()) {
202
+ return { toolResult: { isError: true, content: [{ type: "text", text: "SendGrid not configured. Add sendgrid_api_key to WP_SITES_CONFIG." }] } };
203
+ }
204
+ try {
205
+ const { query } = params;
206
+ let response;
207
+ if (query) {
208
+ response = await makeSendGridRequest("POST", "marketing/contacts/search", { query });
209
+ }
210
+ else {
211
+ response = await makeSendGridRequest("GET", "marketing/contacts");
212
+ }
213
+ return { toolResult: { content: [{ type: "text", text: JSON.stringify(response, null, 2) }] } };
214
+ }
215
+ catch (error) {
216
+ const errorMessage = error.response?.data?.errors?.[0]?.message || error.message;
217
+ return { toolResult: { isError: true, content: [{ type: "text", text: `Error listing contacts: ${errorMessage}` }] } };
218
+ }
219
+ },
220
+ sg_add_contacts: async (params) => {
221
+ if (!hasSendGrid()) {
222
+ return { toolResult: { isError: true, content: [{ type: "text", text: "SendGrid not configured. Add sendgrid_api_key to WP_SITES_CONFIG." }] } };
223
+ }
224
+ try {
225
+ const { contacts } = params;
226
+ const response = await makeSendGridRequest("PUT", "marketing/contacts", { contacts });
227
+ return { toolResult: { content: [{ type: "text", text: JSON.stringify(response, null, 2) }] } };
228
+ }
229
+ catch (error) {
230
+ const errorMessage = error.response?.data?.errors?.[0]?.message || error.message;
231
+ return { toolResult: { isError: true, content: [{ type: "text", text: `Error adding contacts: ${errorMessage}` }] } };
232
+ }
233
+ },
234
+ sg_get_stats: async (params) => {
235
+ if (!hasSendGrid()) {
236
+ return { toolResult: { isError: true, content: [{ type: "text", text: "SendGrid not configured. Add sendgrid_api_key to WP_SITES_CONFIG." }] } };
237
+ }
238
+ try {
239
+ const { start_date, end_date, aggregated_by } = params;
240
+ const query = { start_date };
241
+ if (end_date)
242
+ query.end_date = end_date;
243
+ if (aggregated_by)
244
+ query.aggregated_by = aggregated_by;
245
+ const qs = Object.entries(query).map(([k, v]) => `${k}=${v}`).join('&');
246
+ const endpoint = `stats?${qs}`;
247
+ const response = await makeSendGridRequest("GET", endpoint);
248
+ return { toolResult: { content: [{ type: "text", text: JSON.stringify(response, null, 2) }] } };
249
+ }
250
+ catch (error) {
251
+ const errorMessage = error.response?.data?.errors?.[0]?.message || error.message;
252
+ return { toolResult: { isError: true, content: [{ type: "text", text: `Error getting stats: ${errorMessage}` }] } };
253
+ }
254
+ },
255
+ };
@@ -20,9 +20,9 @@ declare const listContentSchema: z.ZodObject<{
20
20
  include_pagination: z.ZodOptional<z.ZodBoolean>;
21
21
  }, "strip", z.ZodTypeAny, {
22
22
  content_type: string;
23
+ search?: string | undefined;
23
24
  page?: number | undefined;
24
25
  per_page?: number | undefined;
25
- search?: string | undefined;
26
26
  slug?: string | undefined;
27
27
  status?: string | undefined;
28
28
  author?: number | number[] | undefined;
@@ -38,9 +38,9 @@ declare const listContentSchema: z.ZodObject<{
38
38
  include_pagination?: boolean | undefined;
39
39
  }, {
40
40
  content_type: string;
41
+ search?: string | undefined;
41
42
  page?: number | undefined;
42
43
  per_page?: number | undefined;
43
- search?: string | undefined;
44
44
  slug?: string | undefined;
45
45
  status?: string | undefined;
46
46
  author?: number | number[] | undefined;
@@ -61,13 +61,13 @@ declare const getContentSchema: z.ZodObject<{
61
61
  _embed: z.ZodOptional<z.ZodBoolean>;
62
62
  _fields: z.ZodOptional<z.ZodString>;
63
63
  }, "strip", z.ZodTypeAny, {
64
- content_type: string;
65
64
  id: number;
65
+ content_type: string;
66
66
  _embed?: boolean | undefined;
67
67
  _fields?: string | undefined;
68
68
  }, {
69
- content_type: string;
70
69
  id: number;
70
+ content_type: string;
71
71
  _embed?: boolean | undefined;
72
72
  _fields?: string | undefined;
73
73
  }>;
@@ -138,8 +138,8 @@ declare const updateContentSchema: z.ZodObject<{
138
138
  meta: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodAny>>;
139
139
  custom_fields: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodAny>>;
140
140
  }, "strip", z.ZodTypeAny, {
141
- content_type: string;
142
141
  id: number;
142
+ content_type: string;
143
143
  slug?: string | undefined;
144
144
  status?: string | undefined;
145
145
  author?: number | undefined;
@@ -155,8 +155,8 @@ declare const updateContentSchema: z.ZodObject<{
155
155
  meta?: Record<string, any> | undefined;
156
156
  custom_fields?: Record<string, any> | undefined;
157
157
  }, {
158
- content_type: string;
159
158
  id: number;
159
+ content_type: string;
160
160
  slug?: string | undefined;
161
161
  status?: string | undefined;
162
162
  author?: number | undefined;
@@ -177,12 +177,12 @@ declare const deleteContentSchema: z.ZodObject<{
177
177
  id: z.ZodNumber;
178
178
  force: z.ZodOptional<z.ZodBoolean>;
179
179
  }, "strip", z.ZodTypeAny, {
180
- content_type: string;
181
180
  id: number;
181
+ content_type: string;
182
182
  force?: boolean | undefined;
183
183
  }, {
184
- content_type: string;
185
184
  id: number;
185
+ content_type: string;
186
186
  force?: boolean | undefined;
187
187
  }>;
188
188
  declare const discoverContentTypesSchema: z.ZodObject<{
@@ -25,12 +25,12 @@ declare const listTermsSchema: z.ZodObject<{
25
25
  include_pagination: z.ZodOptional<z.ZodBoolean>;
26
26
  }, "strip", z.ZodTypeAny, {
27
27
  taxonomy: string;
28
+ search?: string | undefined;
28
29
  page?: number | undefined;
29
30
  per_page?: number | undefined;
30
- search?: string | undefined;
31
31
  slug?: string | undefined;
32
32
  parent?: number | undefined;
33
- orderby?: "slug" | "id" | "description" | "name" | "include" | "term_group" | "count" | undefined;
33
+ orderby?: "id" | "slug" | "description" | "name" | "include" | "term_group" | "count" | undefined;
34
34
  order?: "asc" | "desc" | undefined;
35
35
  _embed?: boolean | undefined;
36
36
  _fields?: string | undefined;
@@ -38,12 +38,12 @@ declare const listTermsSchema: z.ZodObject<{
38
38
  hide_empty?: boolean | undefined;
39
39
  }, {
40
40
  taxonomy: string;
41
+ search?: string | undefined;
41
42
  page?: number | undefined;
42
43
  per_page?: number | undefined;
43
- search?: string | undefined;
44
44
  slug?: string | undefined;
45
45
  parent?: number | undefined;
46
- orderby?: "slug" | "id" | "description" | "name" | "include" | "term_group" | "count" | undefined;
46
+ orderby?: "id" | "slug" | "description" | "name" | "include" | "term_group" | "count" | undefined;
47
47
  order?: "asc" | "desc" | undefined;
48
48
  _embed?: boolean | undefined;
49
49
  _fields?: string | undefined;
@@ -12,10 +12,10 @@ declare const listUsersSchema: z.ZodObject<{
12
12
  _fields: z.ZodOptional<z.ZodString>;
13
13
  include_pagination: z.ZodOptional<z.ZodBoolean>;
14
14
  }, "strip", z.ZodTypeAny, {
15
+ search?: string | undefined;
15
16
  page?: number | undefined;
16
17
  per_page?: number | undefined;
17
- search?: string | undefined;
18
- orderby?: "url" | "slug" | "id" | "name" | "include" | "registered_date" | "email" | undefined;
18
+ orderby?: "url" | "id" | "email" | "slug" | "name" | "include" | "registered_date" | undefined;
19
19
  order?: "asc" | "desc" | undefined;
20
20
  _embed?: boolean | undefined;
21
21
  _fields?: string | undefined;
@@ -23,10 +23,10 @@ declare const listUsersSchema: z.ZodObject<{
23
23
  context?: "view" | "embed" | "edit" | undefined;
24
24
  roles?: string[] | undefined;
25
25
  }, {
26
+ search?: string | undefined;
26
27
  page?: number | undefined;
27
28
  per_page?: number | undefined;
28
- search?: string | undefined;
29
- orderby?: "url" | "slug" | "id" | "name" | "include" | "registered_date" | "email" | undefined;
29
+ orderby?: "url" | "id" | "email" | "slug" | "name" | "include" | "registered_date" | undefined;
30
30
  order?: "asc" | "desc" | undefined;
31
31
  _embed?: boolean | undefined;
32
32
  _fields?: string | undefined;
@@ -117,10 +117,10 @@ declare const updateUserSchema: z.ZodObject<{
117
117
  }, "strict", z.ZodTypeAny, {
118
118
  id: number;
119
119
  url?: string | undefined;
120
+ email?: string | undefined;
120
121
  slug?: string | undefined;
121
122
  description?: string | undefined;
122
123
  name?: string | undefined;
123
- email?: string | undefined;
124
124
  roles?: string[] | undefined;
125
125
  username?: string | undefined;
126
126
  first_name?: string | undefined;
@@ -131,10 +131,10 @@ declare const updateUserSchema: z.ZodObject<{
131
131
  }, {
132
132
  id: number;
133
133
  url?: string | undefined;
134
+ email?: string | undefined;
134
135
  slug?: string | undefined;
135
136
  description?: string | undefined;
136
137
  name?: string | undefined;
137
- email?: string | undefined;
138
138
  roles?: string[] | undefined;
139
139
  username?: string | undefined;
140
140
  first_name?: string | undefined;
@@ -9,9 +9,9 @@ declare const wcListCouponsSchema: z.ZodObject<{
9
9
  per_page: number;
10
10
  search?: string | undefined;
11
11
  }, {
12
+ search?: string | undefined;
12
13
  page?: number | undefined;
13
14
  per_page?: number | undefined;
14
- search?: string | undefined;
15
15
  }>;
16
16
  declare const wcGetCouponSchema: z.ZodObject<{
17
17
  id: z.ZodNumber;
@@ -14,15 +14,15 @@ declare const wcListCustomersSchema: z.ZodObject<{
14
14
  order: "asc" | "desc";
15
15
  role: "author" | "customer" | "all" | "administrator" | "editor" | "contributor" | "subscriber";
16
16
  search?: string | undefined;
17
- orderby?: "id" | "name" | "registered_date" | undefined;
18
17
  email?: string | undefined;
18
+ orderby?: "id" | "name" | "registered_date" | undefined;
19
19
  }, {
20
+ search?: string | undefined;
21
+ email?: string | undefined;
20
22
  page?: number | undefined;
21
23
  per_page?: number | undefined;
22
- search?: string | undefined;
23
24
  orderby?: "id" | "name" | "registered_date" | undefined;
24
25
  order?: "asc" | "desc" | undefined;
25
- email?: string | undefined;
26
26
  role?: "author" | "customer" | "all" | "administrator" | "editor" | "contributor" | "subscriber" | undefined;
27
27
  }>;
28
28
  declare const wcGetCustomerSchema: z.ZodObject<{
@@ -14,7 +14,7 @@ declare const wcListOrdersSchema: z.ZodObject<{
14
14
  per_page: number;
15
15
  order: "asc" | "desc";
16
16
  status?: "trash" | "pending" | "any" | "processing" | "on-hold" | "completed" | "cancelled" | "refunded" | "failed" | undefined;
17
- orderby?: "slug" | "date" | "id" | "title" | undefined;
17
+ orderby?: "id" | "slug" | "date" | "title" | undefined;
18
18
  after?: string | undefined;
19
19
  before?: string | undefined;
20
20
  customer?: number | undefined;
@@ -22,7 +22,7 @@ declare const wcListOrdersSchema: z.ZodObject<{
22
22
  page?: number | undefined;
23
23
  per_page?: number | undefined;
24
24
  status?: "trash" | "pending" | "any" | "processing" | "on-hold" | "completed" | "cancelled" | "refunded" | "failed" | undefined;
25
- orderby?: "slug" | "date" | "id" | "title" | undefined;
25
+ orderby?: "id" | "slug" | "date" | "title" | undefined;
26
26
  order?: "asc" | "desc" | undefined;
27
27
  after?: string | undefined;
28
28
  before?: string | undefined;
@@ -39,11 +39,11 @@ declare const wcUpdateOrderStatusSchema: z.ZodObject<{
39
39
  id: z.ZodNumber;
40
40
  status: z.ZodEnum<["pending", "processing", "on-hold", "completed", "cancelled", "refunded", "failed"]>;
41
41
  }, "strict", z.ZodTypeAny, {
42
- status: "pending" | "processing" | "on-hold" | "completed" | "cancelled" | "refunded" | "failed";
43
42
  id: number;
44
- }, {
45
43
  status: "pending" | "processing" | "on-hold" | "completed" | "cancelled" | "refunded" | "failed";
44
+ }, {
46
45
  id: number;
46
+ status: "pending" | "processing" | "on-hold" | "completed" | "cancelled" | "refunded" | "failed";
47
47
  }>;
48
48
  declare const wcListOrderNotesSchema: z.ZodObject<{
49
49
  order_id: z.ZodNumber;
@@ -17,17 +17,17 @@ declare const wcListProductsSchema: z.ZodObject<{
17
17
  order: "asc" | "desc";
18
18
  search?: string | undefined;
19
19
  status?: "draft" | "pending" | "private" | "publish" | "any" | undefined;
20
- orderby?: "slug" | "date" | "id" | "title" | "price" | "popularity" | "rating" | undefined;
20
+ orderby?: "id" | "slug" | "date" | "title" | "price" | "popularity" | "rating" | undefined;
21
21
  category?: number | undefined;
22
22
  tag?: number | undefined;
23
23
  sku?: string | undefined;
24
24
  stock_status?: "instock" | "outofstock" | "onbackorder" | undefined;
25
25
  }, {
26
+ search?: string | undefined;
26
27
  page?: number | undefined;
27
28
  per_page?: number | undefined;
28
- search?: string | undefined;
29
29
  status?: "draft" | "pending" | "private" | "publish" | "any" | undefined;
30
- orderby?: "slug" | "date" | "id" | "title" | "price" | "popularity" | "rating" | undefined;
30
+ orderby?: "id" | "slug" | "date" | "title" | "price" | "popularity" | "rating" | undefined;
31
31
  order?: "asc" | "desc" | undefined;
32
32
  category?: number | undefined;
33
33
  tag?: number | undefined;
@@ -74,8 +74,8 @@ declare const wcCreateProductSchema: z.ZodObject<{
74
74
  src: string;
75
75
  }>, "many">>;
76
76
  }, "strict", z.ZodTypeAny, {
77
- status: "draft" | "pending" | "private" | "publish";
78
77
  type: "simple" | "grouped" | "external" | "variable";
78
+ status: "draft" | "pending" | "private" | "publish";
79
79
  name: string;
80
80
  categories?: {
81
81
  id: number;
@@ -95,8 +95,8 @@ declare const wcCreateProductSchema: z.ZodObject<{
95
95
  }[] | undefined;
96
96
  }, {
97
97
  name: string;
98
- status?: "draft" | "pending" | "private" | "publish" | undefined;
99
98
  type?: "simple" | "grouped" | "external" | "variable" | undefined;
99
+ status?: "draft" | "pending" | "private" | "publish" | undefined;
100
100
  categories?: {
101
101
  id: number;
102
102
  }[] | undefined;
@@ -174,13 +174,13 @@ declare const wcListProductCategoriesSchema: z.ZodObject<{
174
174
  order: "asc" | "desc";
175
175
  search?: string | undefined;
176
176
  parent?: number | undefined;
177
- orderby?: "slug" | "id" | "name" | "count" | undefined;
177
+ orderby?: "id" | "slug" | "name" | "count" | undefined;
178
178
  }, {
179
+ search?: string | undefined;
179
180
  page?: number | undefined;
180
181
  per_page?: number | undefined;
181
- search?: string | undefined;
182
182
  parent?: number | undefined;
183
- orderby?: "slug" | "id" | "name" | "count" | undefined;
183
+ orderby?: "id" | "slug" | "name" | "count" | undefined;
184
184
  order?: "asc" | "desc" | undefined;
185
185
  }>;
186
186
  declare const wcListProductVariationsSchema: z.ZodObject<{
@@ -17,14 +17,14 @@ declare const wcCreateWebhookSchema: z.ZodObject<{
17
17
  name: string;
18
18
  topic: string;
19
19
  delivery_url: string;
20
- status?: "active" | "paused" | "disabled" | undefined;
21
20
  secret?: string | undefined;
21
+ status?: "active" | "paused" | "disabled" | undefined;
22
22
  }, {
23
23
  name: string;
24
24
  topic: string;
25
25
  delivery_url: string;
26
- status?: "active" | "paused" | "disabled" | undefined;
27
26
  secret?: string | undefined;
27
+ status?: "active" | "paused" | "disabled" | undefined;
28
28
  }>;
29
29
  declare const wcUpdateWebhookSchema: z.ZodObject<{
30
30
  id: z.ZodNumber;
@@ -35,18 +35,18 @@ declare const wcUpdateWebhookSchema: z.ZodObject<{
35
35
  status: z.ZodOptional<z.ZodEnum<["active", "paused", "disabled"]>>;
36
36
  }, "strict", z.ZodTypeAny, {
37
37
  id: number;
38
+ secret?: string | undefined;
38
39
  status?: "active" | "paused" | "disabled" | undefined;
39
40
  name?: string | undefined;
40
41
  topic?: string | undefined;
41
42
  delivery_url?: string | undefined;
42
- secret?: string | undefined;
43
43
  }, {
44
44
  id: number;
45
+ secret?: string | undefined;
45
46
  status?: "active" | "paused" | "disabled" | undefined;
46
47
  name?: string | undefined;
47
48
  topic?: string | undefined;
48
49
  delivery_url?: string | undefined;
49
- secret?: string | undefined;
50
50
  }>;
51
51
  declare const wcDeleteWebhookSchema: z.ZodObject<{
52
52
  id: z.ZodNumber;