@publishq/sdk 0.0.1

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,3990 @@
1
+ import * as z from 'zod/mini';
2
+
3
+ type AuthToken = string | undefined;
4
+ interface Auth {
5
+ /**
6
+ * Which part of the request do we use to send the auth?
7
+ *
8
+ * @default 'header'
9
+ */
10
+ in?: 'header' | 'query' | 'cookie';
11
+ /**
12
+ * A unique identifier for the security scheme.
13
+ *
14
+ * Defined only when there are multiple security schemes whose `Auth`
15
+ * shape would otherwise be identical.
16
+ */
17
+ key?: string;
18
+ /**
19
+ * Header or query parameter name.
20
+ *
21
+ * @default 'Authorization'
22
+ */
23
+ name?: string;
24
+ scheme?: 'basic' | 'bearer';
25
+ type: 'apiKey' | 'http';
26
+ }
27
+
28
+ interface SerializerOptions<T> {
29
+ /**
30
+ * @default true
31
+ */
32
+ explode: boolean;
33
+ style: T;
34
+ }
35
+ type ArrayStyle = 'form' | 'spaceDelimited' | 'pipeDelimited';
36
+ type ObjectStyle = 'form' | 'deepObject';
37
+
38
+ type QuerySerializer = (query: Record<string, unknown>) => string;
39
+ type BodySerializer = (body: unknown) => unknown;
40
+ type QuerySerializerOptionsObject = {
41
+ allowReserved?: boolean;
42
+ array?: Partial<SerializerOptions<ArrayStyle>>;
43
+ object?: Partial<SerializerOptions<ObjectStyle>>;
44
+ };
45
+ type QuerySerializerOptions = QuerySerializerOptionsObject & {
46
+ /**
47
+ * Per-parameter serialization overrides. When provided, these settings
48
+ * override the global array/object settings for specific parameter names.
49
+ */
50
+ parameters?: Record<string, QuerySerializerOptionsObject>;
51
+ };
52
+
53
+ type HttpMethod = 'connect' | 'delete' | 'get' | 'head' | 'options' | 'patch' | 'post' | 'put' | 'trace';
54
+ type Client$1<RequestFn = never, Config = unknown, MethodFn = never, BuildUrlFn = never, SseFn = never> = {
55
+ /**
56
+ * Returns the final request URL.
57
+ */
58
+ buildUrl: BuildUrlFn;
59
+ getConfig: () => Config;
60
+ request: RequestFn;
61
+ setConfig: (config: Config) => Config;
62
+ } & {
63
+ [K in HttpMethod]: MethodFn;
64
+ } & ([SseFn] extends [never] ? {
65
+ sse?: never;
66
+ } : {
67
+ sse: {
68
+ [K in HttpMethod]: SseFn;
69
+ };
70
+ });
71
+ interface Config$1 {
72
+ /**
73
+ * Auth token or a function returning auth token. The resolved value will be
74
+ * added to the request payload as defined by its `security` array.
75
+ */
76
+ auth?: ((auth: Auth) => Promise<AuthToken> | AuthToken) | AuthToken;
77
+ /**
78
+ * A function for serializing request body parameter. By default,
79
+ * {@link JSON.stringify()} will be used.
80
+ */
81
+ bodySerializer?: BodySerializer | null;
82
+ /**
83
+ * An object containing any HTTP headers that you want to pre-populate your
84
+ * `Headers` object with.
85
+ *
86
+ * {@link https://developer.mozilla.org/docs/Web/API/Headers/Headers#init See more}
87
+ */
88
+ headers?: RequestInit['headers'] | Record<string, string | number | boolean | (string | number | boolean)[] | null | undefined | unknown>;
89
+ /**
90
+ * The request method.
91
+ *
92
+ * {@link https://developer.mozilla.org/docs/Web/API/fetch#method See more}
93
+ */
94
+ method?: Uppercase<HttpMethod>;
95
+ /**
96
+ * A function for serializing request query parameters. By default, arrays
97
+ * will be exploded in form style, objects will be exploded in deepObject
98
+ * style, and reserved characters are percent-encoded.
99
+ *
100
+ * This method will have no effect if the native `paramsSerializer()` Axios
101
+ * API function is used.
102
+ *
103
+ * {@link https://swagger.io/docs/specification/serialization/#query View examples}
104
+ */
105
+ querySerializer?: QuerySerializer | QuerySerializerOptions;
106
+ /**
107
+ * A function validating request data. This is useful if you want to ensure
108
+ * the request conforms to the desired shape, so it can be safely sent to
109
+ * the server.
110
+ */
111
+ requestValidator?: (data: unknown) => Promise<unknown>;
112
+ /**
113
+ * A function transforming response data before it's returned. This is useful
114
+ * for post-processing data, e.g., converting ISO strings into Date objects.
115
+ */
116
+ responseTransformer?: (data: unknown) => Promise<unknown>;
117
+ /**
118
+ * A function validating response data. This is useful if you want to ensure
119
+ * the response conforms to the desired shape, so it can be safely passed to
120
+ * the transformers and returned to the user.
121
+ */
122
+ responseValidator?: (data: unknown) => Promise<unknown>;
123
+ }
124
+ /**
125
+ * Arbitrary metadata passed through the `meta` request option.
126
+ */
127
+ interface ClientMeta {
128
+ }
129
+
130
+ type ServerSentEventsOptions<TData = unknown> = Omit<RequestInit, 'method'> & Pick<Config$1, 'method' | 'responseTransformer' | 'responseValidator'> & {
131
+ /**
132
+ * Fetch API implementation. You can use this option to provide a custom
133
+ * fetch instance.
134
+ *
135
+ * @default globalThis.fetch
136
+ */
137
+ fetch?: typeof fetch;
138
+ /**
139
+ * Implementing clients can call request interceptors inside this hook.
140
+ */
141
+ onRequest?: (url: string, init: RequestInit) => Promise<Request>;
142
+ /**
143
+ * Callback invoked when a network or parsing error occurs during streaming.
144
+ *
145
+ * This option applies only if the endpoint returns a stream of events.
146
+ *
147
+ * @param error The error that occurred.
148
+ */
149
+ onSseError?: (error: unknown) => void;
150
+ /**
151
+ * Callback invoked when an event is streamed from the server.
152
+ *
153
+ * This option applies only if the endpoint returns a stream of events.
154
+ *
155
+ * @param event Event streamed from the server.
156
+ * @returns Nothing (void).
157
+ */
158
+ onSseEvent?: (event: StreamEvent<TData>) => void;
159
+ serializedBody?: RequestInit['body'];
160
+ /**
161
+ * Default retry delay in milliseconds.
162
+ *
163
+ * This option applies only if the endpoint returns a stream of events.
164
+ *
165
+ * @default 3000
166
+ */
167
+ sseDefaultRetryDelay?: number;
168
+ /**
169
+ * Maximum number of retry attempts before giving up.
170
+ */
171
+ sseMaxRetryAttempts?: number;
172
+ /**
173
+ * Maximum retry delay in milliseconds.
174
+ *
175
+ * Applies only when exponential backoff is used.
176
+ *
177
+ * This option applies only if the endpoint returns a stream of events.
178
+ *
179
+ * @default 30000
180
+ */
181
+ sseMaxRetryDelay?: number;
182
+ /**
183
+ * Optional sleep function for retry backoff.
184
+ *
185
+ * Defaults to using `setTimeout`.
186
+ */
187
+ sseSleepFn?: (ms: number) => Promise<void>;
188
+ url: string;
189
+ };
190
+ interface StreamEvent<TData = unknown> {
191
+ data: TData;
192
+ event?: string;
193
+ id?: string;
194
+ retry?: number;
195
+ }
196
+ type ServerSentEventsResult<TData = unknown, TReturn = void, TNext = unknown> = {
197
+ stream: AsyncGenerator<TData extends Record<string, unknown> ? TData[keyof TData] : TData, TReturn, TNext>;
198
+ };
199
+
200
+ type ErrInterceptor<Err, Res, Req, Options> = (error: Err,
201
+ /** response may be undefined due to a network error where no response object is produced */
202
+ response: Res | undefined,
203
+ /** request may be undefined, because error may be from building the request object itself */
204
+ request: Req | undefined, options: Options) => Err | Promise<Err>;
205
+ type ReqInterceptor<Req, Options> = (request: Req, options: Options) => Req | Promise<Req>;
206
+ type ResInterceptor<Res, Req, Options> = (response: Res, request: Req, options: Options) => Res | Promise<Res>;
207
+ declare class Interceptors<Interceptor> {
208
+ fns: Array<Interceptor | null>;
209
+ clear(): void;
210
+ eject(id: number | Interceptor): void;
211
+ exists(id: number | Interceptor): boolean;
212
+ getInterceptorIndex(id: number | Interceptor): number;
213
+ update(id: number | Interceptor, fn: Interceptor): number | Interceptor | false;
214
+ use(fn: Interceptor): number;
215
+ }
216
+ interface Middleware<Req, Res, Err, Options> {
217
+ error: Interceptors<ErrInterceptor<Err, Res, Req, Options>>;
218
+ request: Interceptors<ReqInterceptor<Req, Options>>;
219
+ response: Interceptors<ResInterceptor<Res, Req, Options>>;
220
+ }
221
+
222
+ type ResponseStyle = 'data' | 'fields';
223
+ interface Config<T extends ClientOptions$1 = ClientOptions$1> extends Omit<RequestInit, 'body' | 'headers' | 'method'>, Config$1 {
224
+ /**
225
+ * Base URL for all requests made by this client.
226
+ */
227
+ baseUrl?: T['baseUrl'];
228
+ /**
229
+ * Fetch API implementation. You can use this option to provide a custom
230
+ * fetch instance.
231
+ *
232
+ * @default globalThis.fetch
233
+ */
234
+ fetch?: typeof fetch;
235
+ /**
236
+ * Please don't use the Fetch client for Next.js applications. The `next`
237
+ * options won't have any effect.
238
+ *
239
+ * Install {@link https://www.npmjs.com/package/@hey-api/client-next `@hey-api/client-next`} instead.
240
+ */
241
+ next?: never;
242
+ /**
243
+ * Return the response data parsed in a specified format. By default, `auto`
244
+ * will infer the appropriate method from the `Content-Type` response header.
245
+ * You can override this behavior with any of the {@link Body} methods.
246
+ * Select `stream` if you don't want to parse response data at all.
247
+ *
248
+ * @default 'auto'
249
+ */
250
+ parseAs?: 'arrayBuffer' | 'auto' | 'blob' | 'formData' | 'json' | 'stream' | 'text';
251
+ /**
252
+ * Should we return only data or multiple fields (data, error, response, etc.)?
253
+ *
254
+ * @default 'fields'
255
+ */
256
+ responseStyle?: ResponseStyle;
257
+ /**
258
+ * Throw an error instead of returning it in the response?
259
+ *
260
+ * @default false
261
+ */
262
+ throwOnError?: T['throwOnError'];
263
+ }
264
+ interface RequestOptions<TData = unknown, TResponseStyle extends ResponseStyle = 'fields', ThrowOnError extends boolean = boolean, Url extends string = string> extends Config<{
265
+ responseStyle: TResponseStyle;
266
+ throwOnError: ThrowOnError;
267
+ }>, Pick<ServerSentEventsOptions<TData>, 'onRequest' | 'onSseError' | 'onSseEvent' | 'sseDefaultRetryDelay' | 'sseMaxRetryAttempts' | 'sseMaxRetryDelay'> {
268
+ /**
269
+ * Any body that you want to add to your request.
270
+ *
271
+ * {@link https://developer.mozilla.org/docs/Web/API/fetch#body}
272
+ */
273
+ body?: unknown;
274
+ path?: Record<string, unknown>;
275
+ query?: Record<string, unknown>;
276
+ /**
277
+ * Security mechanism(s) to use for the request.
278
+ */
279
+ security?: ReadonlyArray<Auth>;
280
+ url: Url;
281
+ }
282
+ interface ResolvedRequestOptions<TResponseStyle extends ResponseStyle = 'fields', ThrowOnError extends boolean = boolean, Url extends string = string> extends RequestOptions<unknown, TResponseStyle, ThrowOnError, Url> {
283
+ headers: Headers;
284
+ serializedBody?: string;
285
+ }
286
+ type RequestResult<TData = unknown, TError = unknown, ThrowOnError extends boolean = boolean, TResponseStyle extends ResponseStyle = 'fields'> = ThrowOnError extends true ? Promise<TResponseStyle extends 'data' ? TData extends Record<string, unknown> ? TData[keyof TData] : TData : {
287
+ data: TData extends Record<string, unknown> ? TData[keyof TData] : TData;
288
+ request: Request;
289
+ response: Response;
290
+ }> : Promise<TResponseStyle extends 'data' ? (TData extends Record<string, unknown> ? TData[keyof TData] : TData) | undefined : ({
291
+ data: TData extends Record<string, unknown> ? TData[keyof TData] : TData;
292
+ error: undefined;
293
+ } | {
294
+ data: undefined;
295
+ error: TError extends Record<string, unknown> ? TError[keyof TError] : TError;
296
+ }) & {
297
+ /** request may be undefined, because error may be from building the request object itself */
298
+ request?: Request;
299
+ /** response may be undefined, because error may be from building the request object itself or from a network error */
300
+ response?: Response;
301
+ }>;
302
+ interface ClientOptions$1 {
303
+ baseUrl?: string;
304
+ responseStyle?: ResponseStyle;
305
+ throwOnError?: boolean;
306
+ }
307
+ type MethodFn = <TData = unknown, TError = unknown, ThrowOnError extends boolean = false, TResponseStyle extends ResponseStyle = 'fields'>(options: Omit<RequestOptions<TData, TResponseStyle, ThrowOnError>, 'method'>) => RequestResult<TData, TError, ThrowOnError, TResponseStyle>;
308
+ type SseFn = <TData = unknown, _TError = unknown, ThrowOnError extends boolean = false, TResponseStyle extends ResponseStyle = 'fields'>(options: Omit<RequestOptions<never, TResponseStyle, ThrowOnError>, 'method'>) => Promise<ServerSentEventsResult<TData>>;
309
+ type RequestFn = <TData = unknown, TError = unknown, ThrowOnError extends boolean = false, TResponseStyle extends ResponseStyle = 'fields'>(options: Omit<RequestOptions<TData, TResponseStyle, ThrowOnError>, 'method'> & Pick<Required<RequestOptions<TData, TResponseStyle, ThrowOnError>>, 'method'>) => RequestResult<TData, TError, ThrowOnError, TResponseStyle>;
310
+ type BuildUrlFn = <TData extends {
311
+ body?: unknown;
312
+ path?: Record<string, unknown>;
313
+ query?: Record<string, unknown>;
314
+ url: string;
315
+ }>(options: TData & Options$1<TData>) => string;
316
+ type Client = Client$1<RequestFn, Config, MethodFn, BuildUrlFn, SseFn> & {
317
+ interceptors: Middleware<Request, Response, unknown, ResolvedRequestOptions>;
318
+ };
319
+ interface TDataShape {
320
+ body?: unknown;
321
+ headers?: unknown;
322
+ path?: unknown;
323
+ query?: unknown;
324
+ url: string;
325
+ }
326
+ type OmitKeys<T, K> = Pick<T, Exclude<keyof T, K>>;
327
+ type Options$1<TData extends TDataShape = TDataShape, ThrowOnError extends boolean = boolean, TResponse = unknown, TResponseStyle extends ResponseStyle = 'fields'> = OmitKeys<RequestOptions<TResponse, TResponseStyle, ThrowOnError>, 'body' | 'path' | 'query' | 'url'> & ([TData] extends [never] ? unknown : Omit<TData, 'url'>);
328
+
329
+ type ClientOptions = {
330
+ baseUrl: 'https://publishq.com/api/v1' | (string & {});
331
+ };
332
+ type ApiError = {
333
+ error: {
334
+ title: string;
335
+ status: number;
336
+ code: ApiErrorCode;
337
+ message: string;
338
+ instance?: string;
339
+ details?: {
340
+ [key: string]: {
341
+ [key: string]: unknown;
342
+ };
343
+ };
344
+ };
345
+ };
346
+ type ApiErrorCode = 'missing_auth' | 'invalid_auth_format' | 'invalid_api_key' | 'api_key_expired' | 'insufficient_scope' | 'validation_failed' | 'route_not_found' | 'internal_server_error' | 'rate_limit_exceeded' | 'post_not_found' | 'post_forbidden' | 'post_not_editable' | 'media_not_found' | 'media_in_use' | 'storage_limit_exceeded' | 'free_media_limit_exceeded' | 'free_pending_media_limit_exceeded' | 'file_required' | 'file_too_large' | 'unsupported_file_type' | 'unsupported_media_type' | 'invalid_file_extension' | 'social_accounts_not_found' | 'social_accounts_expired' | 'platform_validation_failed' | 'posting_limits_exceeded' | 'scheduled_at_required' | 'invalid_scheduled_at' | 'scheduled_at_too_soon' | 'reschedulable_posts_not_found' | 'workspace_not_found' | 'workspace_forbidden' | 'workspace_owner_required' | 'workspace_account_not_found' | 'workspace_account_conflict' | 'workspace_member_not_found' | 'workspace_member_conflict' | 'workspace_invitation_invalid' | 'workspace_invitation_expired';
347
+ type Pagination = {
348
+ /**
349
+ * Current page number (starting from 1).
350
+ */
351
+ page: number;
352
+ /**
353
+ * Maximum number of items returned per page.
354
+ */
355
+ limit: number;
356
+ /**
357
+ * Total number of matching items.
358
+ */
359
+ total: number;
360
+ /**
361
+ * Total number of pages for the current limit.
362
+ */
363
+ totalPages: number;
364
+ /**
365
+ * Whether another page exists after the current one.
366
+ */
367
+ hasNext: boolean;
368
+ /**
369
+ * Whether another page exists before the current one.
370
+ */
371
+ hasPrev: boolean;
372
+ };
373
+ /**
374
+ * BlueskyPlatformSpecificSettings
375
+ *
376
+ * Bluesky-specific publishing settings. No settings are currently available.
377
+ */
378
+ type BlueskyPlatformSpecificSettings = {
379
+ [key: string]: never;
380
+ };
381
+ /**
382
+ * InstagramPlatformSpecificSettings
383
+ *
384
+ * Instagram-specific post settings. All fields are optional — omit the entire object for a regular feed post or carousel.
385
+ */
386
+ type InstagramPlatformSpecificSettings = {
387
+ /**
388
+ * Set to "story" for ephemeral content that disappears after 24 hours. Set to "reels" to explicitly publish as a Reel. Omit for a regular feed post or carousel — single videos are automatically published as Reels.
389
+ */
390
+ contentType?: 'story' | 'reels';
391
+ /**
392
+ * Reels only. When true (default), the reel can appear in both the Feed and Reels tabs. When false, it only appears in the Reels tab. Neither value guarantees placement — Instagram's algorithm decides based on eligibility and relevance.
393
+ */
394
+ shareToFeed?: boolean;
395
+ /**
396
+ * InstagramTrialParams
397
+ *
398
+ * Reels only. Publish as a trial reel — shown only to non-followers first. Instagram requires a public account with at least 200 followers and rejects the post otherwise.
399
+ */
400
+ trialParams?: {
401
+ /**
402
+ * MANUAL: the trial reel can be graduated (converted to a public reel) manually in the Instagram app. SS_PERFORMANCE: Instagram automatically graduates the reel if it performs well with non-followers.
403
+ */
404
+ graduationStrategy: 'MANUAL' | 'SS_PERFORMANCE';
405
+ };
406
+ /**
407
+ * Reels only. Custom name for the audio track of your reel. Can only be set once — either at creation time or later from the audio page in the Instagram app.
408
+ */
409
+ audioName?: string;
410
+ };
411
+ /**
412
+ * FacebookPlatformSpecificSettings
413
+ *
414
+ * Facebook-specific post settings. All fields are optional — omit the entire object for a regular post.
415
+ */
416
+ type FacebookPlatformSpecificSettings = {
417
+ /**
418
+ * Set to "story" for ephemeral content that disappears after 24 hours. Omit for a regular post — single videos are automatically published as Reels (Facebook no longer has a separate video format).
419
+ */
420
+ contentType?: 'story';
421
+ };
422
+ /**
423
+ * InstagramTrialParams
424
+ *
425
+ * Trial reel graduation settings. Trial reels are shown only to non-followers first. If the reel performs well (SS_PERFORMANCE) or you manually approve it (MANUAL), it gets promoted to a regular reel visible to followers.
426
+ */
427
+ type InstagramTrialParams = {
428
+ /**
429
+ * MANUAL: the trial reel can be graduated (converted to a public reel) manually in the Instagram app. SS_PERFORMANCE: Instagram automatically graduates the reel if it performs well with non-followers.
430
+ */
431
+ graduationStrategy: 'MANUAL' | 'SS_PERFORMANCE';
432
+ };
433
+ /**
434
+ * YouTubePlatformSpecificSettings
435
+ *
436
+ * YouTube-specific upload settings, such as description and privacy.
437
+ */
438
+ type YouTubePlatformSpecificSettings = {
439
+ /**
440
+ * Video description. Max 5000 characters. Shown below the video title on the watch page.
441
+ */
442
+ description?: string;
443
+ /**
444
+ * Video privacy status. Defaults to public. Unverified API projects are restricted to private.
445
+ */
446
+ privacyStatus?: 'public' | 'unlisted' | 'private';
447
+ /**
448
+ * Declare the video as made for kids (COPPA). When true, personalized ads are disabled and some features (comments, notifications) are turned off.
449
+ */
450
+ madeForKids?: boolean;
451
+ /**
452
+ * Disclose that the video contains realistic altered or synthetic (AI-generated) content.
453
+ */
454
+ containsSyntheticMedia?: boolean;
455
+ /**
456
+ * YouTube video category. Defaults to "22" (People & Blogs). Valid IDs: 1 (Film & Animation), 2 (Autos & Vehicles), 10 (Music), 15 (Pets & Animals), 17 (Sports), 19 (Travel & Events), 20 (Gaming), 22 (People & Blogs), 23 (Comedy), 24 (Entertainment), 25 (News & Politics), 26 (Howto & Style), 27 (Education), 28 (Science & Technology), 29 (Nonprofits & Activism).
457
+ */
458
+ categoryId?: '1' | '2' | '10' | '15' | '17' | '19' | '20' | '22' | '23' | '24' | '25' | '26' | '27' | '28' | '29';
459
+ /**
460
+ * Keyword tags for the video. Duplicates are removed. Total of all tags must be under 500 characters. Tags with spaces count as quoted (2 extra chars). Commas between tags also count.
461
+ */
462
+ tags?: Array<string>;
463
+ /**
464
+ * Whether the video can be embedded on other websites. Defaults to true.
465
+ */
466
+ embeddable?: boolean;
467
+ /**
468
+ * Playlist ID to add the video to after upload.
469
+ */
470
+ playlistId?: string;
471
+ };
472
+ /**
473
+ * TikTokPlatformSpecificSettings
474
+ *
475
+ * TikTok-specific publishing settings. Privacy level and brand toggles are required for all posts. Duet/stitch settings only apply to video posts. autoAddMusic only applies to photo posts.
476
+ */
477
+ type TikTokPlatformSpecificSettings = {
478
+ /**
479
+ * Who can view this post. The value must match one of the options returned by the TikTok creator_info/query endpoint for the target account.
480
+ */
481
+ privacyLevel: 'PUBLIC_TO_EVERYONE' | 'FOLLOWER_OF_CREATOR' | 'MUTUAL_FOLLOW_FRIENDS' | 'SELF_ONLY';
482
+ /**
483
+ * If true, other TikTok users cannot comment on this post. Ignored if the creator has set comments to "No one" in their privacy settings.
484
+ */
485
+ disableComment: boolean;
486
+ /**
487
+ * If true, other TikTok users cannot create Duets with this post. Only applies to video posts. Ignored for photo posts and private accounts.
488
+ */
489
+ disableDuet: boolean;
490
+ /**
491
+ * If true, other TikTok users cannot create Stitches with this post. Only applies to video posts. Ignored for photo posts and private accounts.
492
+ */
493
+ disableStitch: boolean;
494
+ /**
495
+ * Set to true if this is a paid partnership promoting a third-party business. Required by TikTok for branded content disclosure.
496
+ */
497
+ brandContentToggle: boolean;
498
+ /**
499
+ * Set to true if this post promotes the creator's own business.
500
+ */
501
+ brandOrganicToggle: boolean;
502
+ /**
503
+ * Photo posts only. If true, TikTok automatically adds recommended background music to the photo carousel. Users can change the music later in the TikTok app.
504
+ */
505
+ autoAddMusic?: boolean;
506
+ /**
507
+ * Video posts only. Set to true if the video is AI-generated content. The video will be labeled with a "Creator labeled as AI-generated" tag.
508
+ */
509
+ videoMadeWithAi?: boolean;
510
+ /**
511
+ * Photo posts only. Additional description text (max 4000 characters). Hashtags and mentions in the description are parsed by TikTok.
512
+ */
513
+ description?: string;
514
+ /**
515
+ * Photo posts only. Zero-based index of the image to use as the carousel cover. Defaults to 0 (first image).
516
+ */
517
+ photoCoverIndex?: number;
518
+ };
519
+ /**
520
+ * LinkedInPlatformSpecificSettings
521
+ *
522
+ * LinkedIn-specific publishing settings, such as post visibility.
523
+ */
524
+ type LinkedInPlatformSpecificSettings = {
525
+ /**
526
+ * Who can see the post. PUBLIC (anyone on LinkedIn) or CONNECTIONS (only your connections). Defaults to PUBLIC. Only available for personal profiles — company pages are always public.
527
+ */
528
+ visibility?: 'CONNECTIONS' | 'PUBLIC';
529
+ };
530
+ /**
531
+ * ThreadsPlatformSpecificSettings
532
+ *
533
+ * Threads-specific publishing settings.
534
+ */
535
+ type ThreadsPlatformSpecificSettings = {
536
+ /**
537
+ * A topic tag for the post (without the # prefix). Max 50 characters. Periods (.) and ampersands (&) are not allowed. Overrides any auto-detected topic from inline hashtags.
538
+ */
539
+ topicTag?: string;
540
+ };
541
+ /**
542
+ * TwitterPlatformSpecificSettings
543
+ *
544
+ * X (Twitter) specific post settings. All fields are optional.
545
+ */
546
+ type TwitterPlatformSpecificSettings = {
547
+ /**
548
+ * Post to a specific X Community. The authenticated user must be a member of the community.
549
+ */
550
+ communityId?: string;
551
+ /**
552
+ * When posting to a community, also share the post with your followers. Only applies when `communityId` is set.
553
+ */
554
+ shareWithFollowers?: boolean;
555
+ /**
556
+ * Make this post exclusive to your subscribers (super followers).
557
+ */
558
+ forSuperFollowersOnly?: boolean;
559
+ /**
560
+ * Control who can reply. `following`: only people you follow. `mentionedUsers`: only people mentioned in the post. `subscribers`: only your subscribers. `verified`: only verified users.
561
+ */
562
+ replySettings?: 'following' | 'mentionedUsers' | 'subscribers' | 'verified';
563
+ /**
564
+ * ID of an existing tweet to quote. Mutually exclusive with poll and media.
565
+ */
566
+ quoteTweetId?: string;
567
+ /**
568
+ * ID of an existing tweet to reply to. Your post will appear as a reply in that tweet's thread.
569
+ */
570
+ replyToTweetId?: string;
571
+ /**
572
+ * Create a poll. Mutually exclusive with media and `quoteTweetId`.
573
+ */
574
+ poll?: {
575
+ /**
576
+ * Poll choices. 2-4 options, max 25 characters each.
577
+ */
578
+ options: Array<string>;
579
+ /**
580
+ * How long the poll stays open, in minutes. Min 5 minutes, max 7 days (10080).
581
+ */
582
+ durationMinutes: number;
583
+ };
584
+ };
585
+ type PostAccount = {
586
+ /**
587
+ * The connected social account identifier.
588
+ */
589
+ accountId: string;
590
+ platform: SocialPlatform;
591
+ /**
592
+ * Display name or username of the connected account.
593
+ */
594
+ accountName: string;
595
+ status: PostStatus;
596
+ /**
597
+ * Link to the published post on the social platform. Present only after successful publishing.
598
+ */
599
+ externalUrl?: string;
600
+ /**
601
+ * When this account's post was published.
602
+ */
603
+ publishedAt?: string;
604
+ /**
605
+ * Error message from the platform if publishing failed for this account.
606
+ */
607
+ errorMessage?: string;
608
+ postOverrides?: PostOverrides;
609
+ platformSpecificSettings?: PlatformSpecificSettings;
610
+ };
611
+ type SocialPlatform = 'TWITTER' | 'INSTAGRAM' | 'FACEBOOK' | 'LINKEDIN' | 'YOUTUBE' | 'TIKTOK' | 'THREADS' | 'BLUESKY';
612
+ type PostStatus = 'DRAFT' | 'SCHEDULED' | 'PUBLISHING' | 'PUBLISHED' | 'FAILED';
613
+ type PostOverrides = {
614
+ /**
615
+ * Custom text for this account, overriding the post-level content.
616
+ */
617
+ content?: string;
618
+ /**
619
+ * Video thumbnail timestamp in milliseconds. Applies to Instagram and TikTok.
620
+ */
621
+ thumbnailTimestamp?: number;
622
+ /**
623
+ * Replacement media for this account. Completely replaces the post-level media.
624
+ */
625
+ mediaIds?: Array<string>;
626
+ };
627
+ /**
628
+ * Platform-specific settings for this account. The accepted shape depends on the account platform.
629
+ */
630
+ type PlatformSpecificSettings = {
631
+ /**
632
+ * Video description. Max 5000 characters. Shown below the video title on the watch page.
633
+ */
634
+ description?: string;
635
+ /**
636
+ * Video privacy status. Defaults to public. Unverified API projects are restricted to private.
637
+ */
638
+ privacyStatus?: 'public' | 'unlisted' | 'private';
639
+ /**
640
+ * Declare the video as made for kids (COPPA). When true, personalized ads are disabled and some features (comments, notifications) are turned off.
641
+ */
642
+ madeForKids?: boolean;
643
+ /**
644
+ * Disclose that the video contains realistic altered or synthetic (AI-generated) content.
645
+ */
646
+ containsSyntheticMedia?: boolean;
647
+ /**
648
+ * YouTube video category. Defaults to "22" (People & Blogs). Valid IDs: 1 (Film & Animation), 2 (Autos & Vehicles), 10 (Music), 15 (Pets & Animals), 17 (Sports), 19 (Travel & Events), 20 (Gaming), 22 (People & Blogs), 23 (Comedy), 24 (Entertainment), 25 (News & Politics), 26 (Howto & Style), 27 (Education), 28 (Science & Technology), 29 (Nonprofits & Activism).
649
+ */
650
+ categoryId?: '1' | '2' | '10' | '15' | '17' | '19' | '20' | '22' | '23' | '24' | '25' | '26' | '27' | '28' | '29';
651
+ /**
652
+ * Keyword tags for the video. Duplicates are removed. Total of all tags must be under 500 characters. Tags with spaces count as quoted (2 extra chars). Commas between tags also count.
653
+ */
654
+ tags?: Array<string>;
655
+ /**
656
+ * Whether the video can be embedded on other websites. Defaults to true.
657
+ */
658
+ embeddable?: boolean;
659
+ /**
660
+ * Playlist ID to add the video to after upload.
661
+ */
662
+ playlistId?: string;
663
+ } | {
664
+ /**
665
+ * Who can view this post. The value must match one of the options returned by the TikTok creator_info/query endpoint for the target account.
666
+ */
667
+ privacyLevel: 'PUBLIC_TO_EVERYONE' | 'FOLLOWER_OF_CREATOR' | 'MUTUAL_FOLLOW_FRIENDS' | 'SELF_ONLY';
668
+ /**
669
+ * If true, other TikTok users cannot comment on this post. Ignored if the creator has set comments to "No one" in their privacy settings.
670
+ */
671
+ disableComment: boolean;
672
+ /**
673
+ * If true, other TikTok users cannot create Duets with this post. Only applies to video posts. Ignored for photo posts and private accounts.
674
+ */
675
+ disableDuet: boolean;
676
+ /**
677
+ * If true, other TikTok users cannot create Stitches with this post. Only applies to video posts. Ignored for photo posts and private accounts.
678
+ */
679
+ disableStitch: boolean;
680
+ /**
681
+ * Set to true if this is a paid partnership promoting a third-party business. Required by TikTok for branded content disclosure.
682
+ */
683
+ brandContentToggle: boolean;
684
+ /**
685
+ * Set to true if this post promotes the creator's own business.
686
+ */
687
+ brandOrganicToggle: boolean;
688
+ /**
689
+ * Photo posts only. If true, TikTok automatically adds recommended background music to the photo carousel. Users can change the music later in the TikTok app.
690
+ */
691
+ autoAddMusic?: boolean;
692
+ /**
693
+ * Video posts only. Set to true if the video is AI-generated content. The video will be labeled with a "Creator labeled as AI-generated" tag.
694
+ */
695
+ videoMadeWithAi?: boolean;
696
+ /**
697
+ * Photo posts only. Additional description text (max 4000 characters). Hashtags and mentions in the description are parsed by TikTok.
698
+ */
699
+ description?: string;
700
+ /**
701
+ * Photo posts only. Zero-based index of the image to use as the carousel cover. Defaults to 0 (first image).
702
+ */
703
+ photoCoverIndex?: number;
704
+ } | {
705
+ /**
706
+ * Set to "story" for ephemeral content that disappears after 24 hours. Set to "reels" to explicitly publish as a Reel. Omit for a regular feed post or carousel — single videos are automatically published as Reels.
707
+ */
708
+ contentType?: 'story' | 'reels';
709
+ /**
710
+ * Reels only. When true (default), the reel can appear in both the Feed and Reels tabs. When false, it only appears in the Reels tab. Neither value guarantees placement — Instagram's algorithm decides based on eligibility and relevance.
711
+ */
712
+ shareToFeed?: boolean;
713
+ /**
714
+ * InstagramTrialParams
715
+ *
716
+ * Reels only. Publish as a trial reel — shown only to non-followers first. Instagram requires a public account with at least 200 followers and rejects the post otherwise.
717
+ */
718
+ trialParams?: {
719
+ /**
720
+ * MANUAL: the trial reel can be graduated (converted to a public reel) manually in the Instagram app. SS_PERFORMANCE: Instagram automatically graduates the reel if it performs well with non-followers.
721
+ */
722
+ graduationStrategy: 'MANUAL' | 'SS_PERFORMANCE';
723
+ };
724
+ /**
725
+ * Reels only. Custom name for the audio track of your reel. Can only be set once — either at creation time or later from the audio page in the Instagram app.
726
+ */
727
+ audioName?: string;
728
+ } | {
729
+ /**
730
+ * Set to "story" for ephemeral content that disappears after 24 hours. Omit for a regular post — single videos are automatically published as Reels (Facebook no longer has a separate video format).
731
+ */
732
+ contentType?: 'story';
733
+ } | {
734
+ /**
735
+ * A topic tag for the post (without the # prefix). Max 50 characters. Periods (.) and ampersands (&) are not allowed. Overrides any auto-detected topic from inline hashtags.
736
+ */
737
+ topicTag?: string;
738
+ } | {
739
+ /**
740
+ * Post to a specific X Community. The authenticated user must be a member of the community.
741
+ */
742
+ communityId?: string;
743
+ /**
744
+ * When posting to a community, also share the post with your followers. Only applies when `communityId` is set.
745
+ */
746
+ shareWithFollowers?: boolean;
747
+ /**
748
+ * Make this post exclusive to your subscribers (super followers).
749
+ */
750
+ forSuperFollowersOnly?: boolean;
751
+ /**
752
+ * Control who can reply. `following`: only people you follow. `mentionedUsers`: only people mentioned in the post. `subscribers`: only your subscribers. `verified`: only verified users.
753
+ */
754
+ replySettings?: 'following' | 'mentionedUsers' | 'subscribers' | 'verified';
755
+ /**
756
+ * ID of an existing tweet to quote. Mutually exclusive with poll and media.
757
+ */
758
+ quoteTweetId?: string;
759
+ /**
760
+ * ID of an existing tweet to reply to. Your post will appear as a reply in that tweet's thread.
761
+ */
762
+ replyToTweetId?: string;
763
+ /**
764
+ * Create a poll. Mutually exclusive with media and `quoteTweetId`.
765
+ */
766
+ poll?: {
767
+ /**
768
+ * Poll choices. 2-4 options, max 25 characters each.
769
+ */
770
+ options: Array<string>;
771
+ /**
772
+ * How long the poll stays open, in minutes. Min 5 minutes, max 7 days (10080).
773
+ */
774
+ durationMinutes: number;
775
+ };
776
+ } | {
777
+ /**
778
+ * Who can see the post. PUBLIC (anyone on LinkedIn) or CONNECTIONS (only your connections). Defaults to PUBLIC. Only available for personal profiles — company pages are always public.
779
+ */
780
+ visibility?: 'CONNECTIONS' | 'PUBLIC';
781
+ } | {
782
+ [key: string]: never;
783
+ } | {
784
+ [key: string]: unknown;
785
+ };
786
+ type Post = {
787
+ /**
788
+ * Unique post identifier.
789
+ */
790
+ id: string;
791
+ /**
792
+ * The shared text content of the post.
793
+ */
794
+ content: string;
795
+ status: PostStatus;
796
+ /**
797
+ * Human-readable error summary when one or more accounts failed.
798
+ */
799
+ errorMessage?: string;
800
+ /**
801
+ * Media attached to this post.
802
+ */
803
+ mediaIds?: Array<string>;
804
+ /**
805
+ * How many media were attached to this post but have since been deleted (rendered as placeholders). Lets a client tell a post that HAD media apart from one posted with none.
806
+ */
807
+ deletedMediaCount?: number;
808
+ /**
809
+ * When the post is scheduled to be published.
810
+ */
811
+ scheduledAt?: string;
812
+ /**
813
+ * When the post was published. Present only when all accounts are published.
814
+ */
815
+ publishedAt?: string;
816
+ /**
817
+ * When the post was created.
818
+ */
819
+ createdAt: string;
820
+ /**
821
+ * Individual account entries. Each represents the post on one connected social account.
822
+ */
823
+ accounts: Array<PostAccount>;
824
+ };
825
+ type PostsResponse = {
826
+ posts: Array<Post>;
827
+ pagination: Pagination;
828
+ };
829
+ /**
830
+ * Create a post across one or more connected social accounts.
831
+ */
832
+ type CreatePostRequest = {
833
+ /**
834
+ * The text content of the post, shared across all accounts unless overridden. Optional when media is attached (platform-dependent).
835
+ */
836
+ content?: string;
837
+ /**
838
+ * Media to attach to the post. Shared across all accounts unless an account provides its own mediaIds in postOverrides.
839
+ */
840
+ mediaIds?: Array<string>;
841
+ /**
842
+ * Default video thumbnail timestamp in milliseconds for Instagram and TikTok. Can be overridden per account.
843
+ */
844
+ thumbnailTimestamp?: number;
845
+ /**
846
+ * Accounts to post to. Each entry can optionally include content overrides and platform-specific settings.
847
+ */
848
+ accounts: Array<CreatePostAccount>;
849
+ /**
850
+ * Schedule the post for a future date. If omitted and publishNow is false or absent, the post is saved as a draft.
851
+ */
852
+ scheduledAt?: string;
853
+ /**
854
+ * Publish immediately. Cannot be combined with scheduledAt.
855
+ */
856
+ publishNow?: boolean;
857
+ };
858
+ type CreatePostAccount = {
859
+ /**
860
+ * ID of a connected social account to post to.
861
+ */
862
+ accountId: string;
863
+ postOverrides?: PostOverrides & unknown;
864
+ platformSpecificSettings?: PlatformSpecificSettings & unknown;
865
+ };
866
+ /**
867
+ * Update a draft or scheduled post. Published and publishing posts cannot be updated. Media behavior is explicit: omit mediaIds to keep existing media unchanged, provide mediaIds to replace all current media, or provide an empty mediaIds array to remove all media.
868
+ */
869
+ type UpdatePostRequest = {
870
+ /**
871
+ * New shared text content for the post.
872
+ */
873
+ content?: string;
874
+ /**
875
+ * New scheduled date for the post. Must be at least 1 minute in the future.
876
+ */
877
+ scheduledAt?: string;
878
+ /**
879
+ * Full replacement for the post media. If omitted, the existing media stays unchanged. If provided, it replaces the current media across all accounts in the post. Send an empty array to remove all media from the post.
880
+ */
881
+ mediaIds?: Array<string>;
882
+ /**
883
+ * New video thumbnail timestamp in milliseconds for Instagram and TikTok media. Does not change which media files are attached. Combine with mediaIds if you want to replace media and set the new thumbnail timestamp in the same request.
884
+ */
885
+ thumbnailTimestamp?: number;
886
+ /**
887
+ * Accounts whose content overrides or platform-specific settings should be updated, plus any additional connected accounts to add to the post. Existing accounts omitted from this array remain unchanged and must be removed through the account-specific delete endpoint.
888
+ */
889
+ accounts?: Array<CreatePostAccount>;
890
+ /**
891
+ * Publish an existing draft immediately. Cannot be combined with scheduledAt.
892
+ */
893
+ publishNow?: boolean;
894
+ };
895
+ type SuccessMessage = {
896
+ deleted: true;
897
+ id: string;
898
+ };
899
+ type Account = {
900
+ /**
901
+ * Unique social account identifier in PublishQ.
902
+ */
903
+ id: string;
904
+ platform: SocialPlatform & unknown;
905
+ /**
906
+ * Human-friendly account name returned by the social platform.
907
+ */
908
+ platformName?: string | null;
909
+ /**
910
+ * Primary username or handle on the connected social platform.
911
+ */
912
+ platformUsername: string;
913
+ /**
914
+ * Unique user or channel identifier provided by the social platform.
915
+ */
916
+ platformUserId: string;
917
+ /**
918
+ * Profile image URL returned by the connected social platform, if available.
919
+ */
920
+ platformPicture?: string | null;
921
+ /**
922
+ * Workspace currently associated with the account, if one exists.
923
+ */
924
+ workspaceId?: string | null;
925
+ };
926
+ type AccountsResponse = {
927
+ /**
928
+ * Connected social accounts visible to the authenticated API key.
929
+ */
930
+ accounts: Array<Account>;
931
+ };
932
+ type Workspace = {
933
+ /**
934
+ * Unique workspace identifier in PublishQ.
935
+ */
936
+ id: string;
937
+ /**
938
+ * Workspace name shown in the PublishQ UI.
939
+ */
940
+ name: string;
941
+ /**
942
+ * Optional workspace description.
943
+ */
944
+ description?: string | null;
945
+ /**
946
+ * Workspace accent color in hex format.
947
+ */
948
+ color: string;
949
+ /**
950
+ * Number of social accounts assigned to this workspace.
951
+ */
952
+ accountCount: number;
953
+ /**
954
+ * When the workspace was created.
955
+ */
956
+ createdAt: string;
957
+ };
958
+ /**
959
+ * Create a new workspace.
960
+ */
961
+ type CreateWorkspaceRequest = {
962
+ /**
963
+ * Workspace name shown in PublishQ.
964
+ */
965
+ name: string;
966
+ /**
967
+ * Optional short description of the workspace.
968
+ */
969
+ description?: string;
970
+ /**
971
+ * Workspace accent color as a hex string like `#6366f1`.
972
+ */
973
+ color?: string;
974
+ };
975
+ type WorkspacesResponse = {
976
+ /**
977
+ * Workspaces visible to the authenticated API key owner.
978
+ */
979
+ workspaces: Array<Workspace>;
980
+ };
981
+ type Media$1 = {
982
+ /**
983
+ * Unique media identifier in PublishQ.
984
+ */
985
+ id: string;
986
+ type: MediaType;
987
+ /**
988
+ * Direct URL to the uploaded or generated media file.
989
+ */
990
+ url: string;
991
+ source: MediaSource;
992
+ /**
993
+ * When the media item was created in PublishQ.
994
+ */
995
+ created_at: string;
996
+ /**
997
+ * Number of posts this media item was used in.
998
+ */
999
+ usageCount: number;
1000
+ };
1001
+ /**
1002
+ * Media file type.
1003
+ */
1004
+ type MediaType = 'IMAGE' | 'VIDEO';
1005
+ /**
1006
+ * How the media was created: uploaded by the user, generated inside PublishQ, or AI-generated inside PublishQ.
1007
+ */
1008
+ type MediaSource = 'UPLOAD' | 'GENERATED' | 'AI_GENERATED';
1009
+ type MediaListResponse = {
1010
+ media: Array<Media$1>;
1011
+ pagination: Pagination;
1012
+ };
1013
+ type UploadMediaRequest = {
1014
+ file: Blob | File;
1015
+ };
1016
+ type TikTokCreatorInfoResponse = {
1017
+ /**
1018
+ * Privacy levels available for this account. Use one of these values as `privacyLevel` in `platformSpecificSettings`.
1019
+ */
1020
+ privacyLevelOptions: Array<string>;
1021
+ /**
1022
+ * True if the creator has disabled comments at the account level.
1023
+ */
1024
+ commentDisabled: boolean;
1025
+ /**
1026
+ * True if the creator has disabled Duets at the account level.
1027
+ */
1028
+ duetDisabled: boolean;
1029
+ /**
1030
+ * True if the creator has disabled Stitches at the account level.
1031
+ */
1032
+ stitchDisabled: boolean;
1033
+ /**
1034
+ * Maximum video duration in seconds this creator can post (typically 180, 300, or 600).
1035
+ */
1036
+ maxVideoPostDurationSec: number;
1037
+ };
1038
+ type ApiKeyScope = 'posts:read' | 'posts:write' | 'accounts:read' | 'workspaces:read' | 'workspaces:write' | 'media:read' | 'media:write';
1039
+ type ListPostsData = {
1040
+ body?: never;
1041
+ path?: never;
1042
+ query?: {
1043
+ /**
1044
+ * Page number (starts from 1).
1045
+ */
1046
+ page?: number;
1047
+ /**
1048
+ * Page size. Max 100.
1049
+ */
1050
+ limit?: number;
1051
+ };
1052
+ url: '/posts';
1053
+ };
1054
+ type ListPostsErrors = {
1055
+ /**
1056
+ * Invalid or missing API key
1057
+ */
1058
+ 401: ApiError;
1059
+ /**
1060
+ * Rate limit exceeded
1061
+ */
1062
+ 429: ApiError;
1063
+ };
1064
+ type ListPostsError = ListPostsErrors[keyof ListPostsErrors];
1065
+ type ListPostsResponses = {
1066
+ /**
1067
+ * Posts retrieved successfully
1068
+ */
1069
+ 200: PostsResponse;
1070
+ };
1071
+ type ListPostsResponse = ListPostsResponses[keyof ListPostsResponses];
1072
+ type CreatePostData = {
1073
+ body: CreatePostRequest;
1074
+ path?: never;
1075
+ query?: never;
1076
+ url: '/posts';
1077
+ };
1078
+ type CreatePostErrors = {
1079
+ /**
1080
+ * Validation or account/media ownership error
1081
+ */
1082
+ 400: ApiError;
1083
+ /**
1084
+ * Invalid or missing API key
1085
+ */
1086
+ 401: ApiError;
1087
+ /**
1088
+ * Plan limits exceeded
1089
+ */
1090
+ 402: ApiError;
1091
+ /**
1092
+ * API key lacks the required scope
1093
+ */
1094
+ 403: ApiError;
1095
+ /**
1096
+ * Rate limit exceeded
1097
+ */
1098
+ 429: ApiError;
1099
+ };
1100
+ type CreatePostError = CreatePostErrors[keyof CreatePostErrors];
1101
+ type CreatePostResponses = {
1102
+ /**
1103
+ * Posts created successfully
1104
+ */
1105
+ 201: Post;
1106
+ };
1107
+ type CreatePostResponse = CreatePostResponses[keyof CreatePostResponses];
1108
+ type DeletePostData = {
1109
+ body?: never;
1110
+ path: {
1111
+ id: string;
1112
+ };
1113
+ query?: never;
1114
+ url: '/posts/{id}';
1115
+ };
1116
+ type DeletePostErrors = {
1117
+ /**
1118
+ * Invalid or missing API key
1119
+ */
1120
+ 401: ApiError;
1121
+ /**
1122
+ * API key lacks the required scope
1123
+ */
1124
+ 403: ApiError;
1125
+ /**
1126
+ * Post not found
1127
+ */
1128
+ 404: ApiError;
1129
+ /**
1130
+ * Rate limit exceeded
1131
+ */
1132
+ 429: ApiError;
1133
+ };
1134
+ type DeletePostError = DeletePostErrors[keyof DeletePostErrors];
1135
+ type DeletePostResponses = {
1136
+ /**
1137
+ * Post deleted successfully
1138
+ */
1139
+ 204: void;
1140
+ };
1141
+ type DeletePostResponse = DeletePostResponses[keyof DeletePostResponses];
1142
+ type GetPostData = {
1143
+ body?: never;
1144
+ path: {
1145
+ id: string;
1146
+ };
1147
+ query?: never;
1148
+ url: '/posts/{id}';
1149
+ };
1150
+ type GetPostErrors = {
1151
+ /**
1152
+ * Invalid or missing API key
1153
+ */
1154
+ 401: ApiError;
1155
+ /**
1156
+ * Post not found
1157
+ */
1158
+ 404: ApiError;
1159
+ /**
1160
+ * Rate limit exceeded
1161
+ */
1162
+ 429: ApiError;
1163
+ };
1164
+ type GetPostError = GetPostErrors[keyof GetPostErrors];
1165
+ type GetPostResponses = {
1166
+ /**
1167
+ * Post retrieved successfully
1168
+ */
1169
+ 200: Post;
1170
+ };
1171
+ type GetPostResponse = GetPostResponses[keyof GetPostResponses];
1172
+ type UpdatePostData = {
1173
+ body: UpdatePostRequest;
1174
+ path: {
1175
+ id: string;
1176
+ };
1177
+ query?: never;
1178
+ url: '/posts/{id}';
1179
+ };
1180
+ type UpdatePostErrors = {
1181
+ /**
1182
+ * Invalid or missing scheduledAt
1183
+ */
1184
+ 400: ApiError;
1185
+ /**
1186
+ * Invalid or missing API key
1187
+ */
1188
+ 401: ApiError;
1189
+ /**
1190
+ * Plan limits exceeded for the target date
1191
+ */
1192
+ 402: ApiError;
1193
+ /**
1194
+ * API key lacks the required scope
1195
+ */
1196
+ 403: ApiError;
1197
+ /**
1198
+ * Post not found
1199
+ */
1200
+ 404: ApiError;
1201
+ /**
1202
+ * Post cannot be updated (already published or publishing)
1203
+ */
1204
+ 409: ApiError;
1205
+ /**
1206
+ * Rate limit exceeded
1207
+ */
1208
+ 429: ApiError;
1209
+ };
1210
+ type UpdatePostError = UpdatePostErrors[keyof UpdatePostErrors];
1211
+ type UpdatePostResponses = {
1212
+ /**
1213
+ * Post updated successfully
1214
+ */
1215
+ 200: Post;
1216
+ };
1217
+ type UpdatePostResponse = UpdatePostResponses[keyof UpdatePostResponses];
1218
+ type RemovePostAccountData = {
1219
+ body?: never;
1220
+ path: {
1221
+ id: string;
1222
+ accountId: string;
1223
+ };
1224
+ query?: never;
1225
+ url: '/posts/{id}/accounts/{accountId}';
1226
+ };
1227
+ type RemovePostAccountErrors = {
1228
+ /**
1229
+ * Invalid or missing API key
1230
+ */
1231
+ 401: ApiError;
1232
+ /**
1233
+ * API key lacks the required scope
1234
+ */
1235
+ 403: ApiError;
1236
+ /**
1237
+ * Post or account entry not found
1238
+ */
1239
+ 404: ApiError;
1240
+ /**
1241
+ * Rate limit exceeded
1242
+ */
1243
+ 429: ApiError;
1244
+ };
1245
+ type RemovePostAccountError = RemovePostAccountErrors[keyof RemovePostAccountErrors];
1246
+ type RemovePostAccountResponses = {
1247
+ /**
1248
+ * Account removed from post successfully
1249
+ */
1250
+ 204: void;
1251
+ };
1252
+ type RemovePostAccountResponse = RemovePostAccountResponses[keyof RemovePostAccountResponses];
1253
+ type ListAccountsData = {
1254
+ body?: never;
1255
+ path?: never;
1256
+ query?: {
1257
+ /**
1258
+ * Return only accounts assigned to the specified workspace. If omitted, accounts from all workspaces are returned.
1259
+ */
1260
+ workspaceId?: string;
1261
+ /**
1262
+ * Return only accounts connected to the specified social platforms. Repeat the parameter to apply OR logic, for example `?platform=twitter&platform=instagram`.
1263
+ */
1264
+ platform?: Array<SocialPlatform>;
1265
+ };
1266
+ url: '/accounts';
1267
+ };
1268
+ type ListAccountsErrors = {
1269
+ /**
1270
+ * Invalid or missing API key
1271
+ */
1272
+ 401: ApiError;
1273
+ /**
1274
+ * Rate limit exceeded
1275
+ */
1276
+ 429: ApiError;
1277
+ };
1278
+ type ListAccountsError = ListAccountsErrors[keyof ListAccountsErrors];
1279
+ type ListAccountsResponses = {
1280
+ /**
1281
+ * Accounts retrieved successfully
1282
+ */
1283
+ 200: AccountsResponse;
1284
+ };
1285
+ type ListAccountsResponse = ListAccountsResponses[keyof ListAccountsResponses];
1286
+ type GetTikTokCreatorInfoData = {
1287
+ body?: never;
1288
+ path: {
1289
+ id: string;
1290
+ };
1291
+ query?: never;
1292
+ url: '/accounts/{id}/tiktok-creator-info';
1293
+ };
1294
+ type GetTikTokCreatorInfoErrors = {
1295
+ /**
1296
+ * Invalid or missing API key
1297
+ */
1298
+ 401: ApiError;
1299
+ /**
1300
+ * Account not found or not a TikTok account
1301
+ */
1302
+ 404: ApiError;
1303
+ /**
1304
+ * Rate limit exceeded
1305
+ */
1306
+ 429: ApiError;
1307
+ };
1308
+ type GetTikTokCreatorInfoError = GetTikTokCreatorInfoErrors[keyof GetTikTokCreatorInfoErrors];
1309
+ type GetTikTokCreatorInfoResponses = {
1310
+ /**
1311
+ * Creator info retrieved successfully
1312
+ */
1313
+ 200: TikTokCreatorInfoResponse;
1314
+ };
1315
+ type GetTikTokCreatorInfoResponse = GetTikTokCreatorInfoResponses[keyof GetTikTokCreatorInfoResponses];
1316
+ type ListWorkspacesData = {
1317
+ body?: never;
1318
+ path?: never;
1319
+ query?: never;
1320
+ url: '/workspaces';
1321
+ };
1322
+ type ListWorkspacesErrors = {
1323
+ /**
1324
+ * Invalid or missing API key
1325
+ */
1326
+ 401: ApiError;
1327
+ /**
1328
+ * API key lacks the required scope
1329
+ */
1330
+ 403: ApiError;
1331
+ /**
1332
+ * Rate limit exceeded
1333
+ */
1334
+ 429: ApiError;
1335
+ };
1336
+ type ListWorkspacesError = ListWorkspacesErrors[keyof ListWorkspacesErrors];
1337
+ type ListWorkspacesResponses = {
1338
+ /**
1339
+ * Workspaces retrieved successfully
1340
+ */
1341
+ 200: WorkspacesResponse;
1342
+ };
1343
+ type ListWorkspacesResponse = ListWorkspacesResponses[keyof ListWorkspacesResponses];
1344
+ type CreateWorkspaceData = {
1345
+ body: CreateWorkspaceRequest;
1346
+ path?: never;
1347
+ query?: never;
1348
+ url: '/workspaces';
1349
+ };
1350
+ type CreateWorkspaceErrors = {
1351
+ /**
1352
+ * Validation failed
1353
+ */
1354
+ 400: ApiError;
1355
+ /**
1356
+ * Invalid or missing API key
1357
+ */
1358
+ 401: ApiError;
1359
+ /**
1360
+ * API key lacks the required scope
1361
+ */
1362
+ 403: ApiError;
1363
+ /**
1364
+ * Rate limit exceeded
1365
+ */
1366
+ 429: ApiError;
1367
+ };
1368
+ type CreateWorkspaceError = CreateWorkspaceErrors[keyof CreateWorkspaceErrors];
1369
+ type CreateWorkspaceResponses = {
1370
+ /**
1371
+ * Workspace created successfully
1372
+ */
1373
+ 201: Workspace;
1374
+ };
1375
+ type CreateWorkspaceResponse = CreateWorkspaceResponses[keyof CreateWorkspaceResponses];
1376
+ type GetWorkspaceData = {
1377
+ body?: never;
1378
+ path: {
1379
+ id: string;
1380
+ };
1381
+ query?: never;
1382
+ url: '/workspaces/{id}';
1383
+ };
1384
+ type GetWorkspaceErrors = {
1385
+ /**
1386
+ * Invalid or missing API key
1387
+ */
1388
+ 401: ApiError;
1389
+ /**
1390
+ * API key lacks the required scope or workspace access
1391
+ */
1392
+ 403: ApiError;
1393
+ /**
1394
+ * Workspace not found
1395
+ */
1396
+ 404: ApiError;
1397
+ /**
1398
+ * Rate limit exceeded
1399
+ */
1400
+ 429: ApiError;
1401
+ };
1402
+ type GetWorkspaceError = GetWorkspaceErrors[keyof GetWorkspaceErrors];
1403
+ type GetWorkspaceResponses = {
1404
+ /**
1405
+ * Workspace retrieved successfully
1406
+ */
1407
+ 200: Workspace;
1408
+ };
1409
+ type GetWorkspaceResponse = GetWorkspaceResponses[keyof GetWorkspaceResponses];
1410
+ type ListMediaData = {
1411
+ body?: never;
1412
+ path?: never;
1413
+ query?: {
1414
+ /**
1415
+ * Page number (starts from 1).
1416
+ */
1417
+ page?: number;
1418
+ /**
1419
+ * Page size. Max 100.
1420
+ */
1421
+ limit?: number;
1422
+ /**
1423
+ * Return only the specified media IDs. Repeat the parameter to apply OR logic, for example `?ids=id1&ids=id2`.
1424
+ */
1425
+ ids?: Array<string>;
1426
+ /**
1427
+ * Return only media items of the specified types. Repeat the parameter to apply OR logic, for example `?mediaTypes=image&mediaTypes=video`.
1428
+ */
1429
+ mediaTypes?: Array<MediaType>;
1430
+ /**
1431
+ * Return only media items from the specified sources. Repeat the parameter to apply OR logic, for example `?sources=upload&sources=ai_generated`.
1432
+ */
1433
+ sources?: Array<MediaSource>;
1434
+ };
1435
+ url: '/media';
1436
+ };
1437
+ type ListMediaErrors = {
1438
+ /**
1439
+ * Invalid or missing API key
1440
+ */
1441
+ 401: ApiError;
1442
+ /**
1443
+ * Rate limit exceeded
1444
+ */
1445
+ 429: ApiError;
1446
+ };
1447
+ type ListMediaError = ListMediaErrors[keyof ListMediaErrors];
1448
+ type ListMediaResponses = {
1449
+ /**
1450
+ * Media retrieved successfully
1451
+ */
1452
+ 200: MediaListResponse;
1453
+ };
1454
+ type ListMediaResponse = ListMediaResponses[keyof ListMediaResponses];
1455
+ type UploadMediaData = {
1456
+ body: UploadMediaRequest;
1457
+ path?: never;
1458
+ query?: never;
1459
+ url: '/media';
1460
+ };
1461
+ type UploadMediaErrors = {
1462
+ /**
1463
+ * Invalid upload request
1464
+ */
1465
+ 400: ApiError;
1466
+ /**
1467
+ * Invalid or missing API key
1468
+ */
1469
+ 401: ApiError;
1470
+ /**
1471
+ * API key lacks the required scope
1472
+ */
1473
+ 403: ApiError;
1474
+ /**
1475
+ * File too large
1476
+ */
1477
+ 413: ApiError;
1478
+ /**
1479
+ * Unsupported file type
1480
+ */
1481
+ 415: ApiError;
1482
+ /**
1483
+ * Rate limit exceeded
1484
+ */
1485
+ 429: ApiError;
1486
+ };
1487
+ type UploadMediaError = UploadMediaErrors[keyof UploadMediaErrors];
1488
+ type UploadMediaResponses = {
1489
+ /**
1490
+ * Media uploaded successfully
1491
+ */
1492
+ 201: Media$1;
1493
+ };
1494
+ type UploadMediaResponse = UploadMediaResponses[keyof UploadMediaResponses];
1495
+ type GetMediaData = {
1496
+ body?: never;
1497
+ path: {
1498
+ id: string;
1499
+ };
1500
+ query?: never;
1501
+ url: '/media/{id}';
1502
+ };
1503
+ type GetMediaErrors = {
1504
+ /**
1505
+ * Invalid or missing API key
1506
+ */
1507
+ 401: ApiError;
1508
+ /**
1509
+ * Media not found
1510
+ */
1511
+ 404: ApiError;
1512
+ /**
1513
+ * Rate limit exceeded
1514
+ */
1515
+ 429: ApiError;
1516
+ };
1517
+ type GetMediaError = GetMediaErrors[keyof GetMediaErrors];
1518
+ type GetMediaResponses = {
1519
+ /**
1520
+ * Media retrieved successfully
1521
+ */
1522
+ 200: Media$1;
1523
+ };
1524
+ type GetMediaResponse = GetMediaResponses[keyof GetMediaResponses];
1525
+
1526
+ type Options<TData extends TDataShape = TDataShape, ThrowOnError extends boolean = boolean, TResponse = unknown> = Options$1<TData, ThrowOnError, TResponse> & {
1527
+ /**
1528
+ * You can provide a client instance returned by `createClient()` instead of
1529
+ * individual options. This might be also useful if you want to implement a
1530
+ * custom client.
1531
+ */
1532
+ client?: Client;
1533
+ /**
1534
+ * You can pass arbitrary values through the `meta` object. This can be
1535
+ * used to access values that aren't defined as part of the SDK function.
1536
+ */
1537
+ meta?: keyof ClientMeta extends never ? Record<string, unknown> : ClientMeta;
1538
+ };
1539
+ declare class Posts {
1540
+ /**
1541
+ * List posts
1542
+ *
1543
+ * Returns a paginated list of posts.
1544
+ */
1545
+ static listPosts<ThrowOnError extends boolean = false>(options?: Options<ListPostsData, ThrowOnError>): RequestResult<ListPostsResponses, ListPostsErrors, ThrowOnError>;
1546
+ /**
1547
+ * Create posts
1548
+ *
1549
+ * Creates a post for one or more connected accounts.
1550
+ */
1551
+ static createPost<ThrowOnError extends boolean = false>(options: Options<CreatePostData, ThrowOnError>): RequestResult<CreatePostResponses, CreatePostErrors, ThrowOnError>;
1552
+ /**
1553
+ * Delete post
1554
+ *
1555
+ * Deletes a scheduled or draft post by its ID. Returns no body on success.
1556
+ */
1557
+ static deletePost<ThrowOnError extends boolean = false>(options: Options<DeletePostData, ThrowOnError>): RequestResult<DeletePostResponses, DeletePostErrors, ThrowOnError>;
1558
+ /**
1559
+ * Get post
1560
+ *
1561
+ * Get one post by its PublishQ post ID. Returns the post details and the connected account metadata needed to identify where it belongs.
1562
+ */
1563
+ static getPost<ThrowOnError extends boolean = false>(options: Options<GetPostData, ThrowOnError>): RequestResult<GetPostResponses, GetPostErrors, ThrowOnError>;
1564
+ /**
1565
+ * Update post
1566
+ *
1567
+ * Update a draft or scheduled post. You can change the content, the scheduled date, or both. Published and publishing posts cannot be updated.
1568
+ */
1569
+ static updatePost<ThrowOnError extends boolean = false>(options: Options<UpdatePostData, ThrowOnError>): RequestResult<UpdatePostResponses, UpdatePostErrors, ThrowOnError>;
1570
+ /**
1571
+ * Remove account from post
1572
+ *
1573
+ * Removes one account from an existing post so it will no longer be published there. Other accounts in the same post are not changed.
1574
+ */
1575
+ static removePostAccount<ThrowOnError extends boolean = false>(options: Options<RemovePostAccountData, ThrowOnError>): RequestResult<RemovePostAccountResponses, RemovePostAccountErrors, ThrowOnError>;
1576
+ }
1577
+ declare class Accounts {
1578
+ /**
1579
+ * List accounts
1580
+ *
1581
+ * List connected social accounts for the authenticated API key owner. You can filter by workspace and by one or more platforms.
1582
+ */
1583
+ static listAccounts<ThrowOnError extends boolean = false>(options?: Options<ListAccountsData, ThrowOnError>): RequestResult<ListAccountsResponses, ListAccountsErrors, ThrowOnError>;
1584
+ /**
1585
+ * Get TikTok creator info
1586
+ *
1587
+ * Returns the TikTok creator's current privacy options, interaction settings, and maximum video duration. Call this before posting to TikTok — the `privacyLevel` you set must match one of the returned `privacyLevelOptions`.
1588
+ */
1589
+ static getTikTokCreatorInfo<ThrowOnError extends boolean = false>(options: Options<GetTikTokCreatorInfoData, ThrowOnError>): RequestResult<GetTikTokCreatorInfoResponses, GetTikTokCreatorInfoErrors, ThrowOnError>;
1590
+ }
1591
+ declare class Workspaces {
1592
+ /**
1593
+ * List workspaces
1594
+ *
1595
+ * Return your workspaces, including their names, colors, and account counts.
1596
+ */
1597
+ static listWorkspaces<ThrowOnError extends boolean = false>(options?: Options<ListWorkspacesData, ThrowOnError>): RequestResult<ListWorkspacesResponses, ListWorkspacesErrors, ThrowOnError>;
1598
+ /**
1599
+ * Create workspace
1600
+ *
1601
+ * Create a workspace to organize your connected social accounts.
1602
+ */
1603
+ static createWorkspace<ThrowOnError extends boolean = false>(options: Options<CreateWorkspaceData, ThrowOnError>): RequestResult<CreateWorkspaceResponses, CreateWorkspaceErrors, ThrowOnError>;
1604
+ /**
1605
+ * Get workspace
1606
+ *
1607
+ * Return one workspace by ID, including its name, color, description, and account count.
1608
+ */
1609
+ static getWorkspace<ThrowOnError extends boolean = false>(options: Options<GetWorkspaceData, ThrowOnError>): RequestResult<GetWorkspaceResponses, GetWorkspaceErrors, ThrowOnError>;
1610
+ }
1611
+ declare class Media {
1612
+ /**
1613
+ * List media
1614
+ *
1615
+ * Return your uploaded and generated media files. You can filter by ID, type, and source before reusing them in posts.
1616
+ */
1617
+ static listMedia<ThrowOnError extends boolean = false>(options?: Options<ListMediaData, ThrowOnError>): RequestResult<ListMediaResponses, ListMediaErrors, ThrowOnError>;
1618
+ /**
1619
+ * Upload media
1620
+ *
1621
+ * Upload one media file with multipart form data. The returned media ID can then be attached to posts.
1622
+ */
1623
+ static uploadMedia<ThrowOnError extends boolean = false>(options: Options<UploadMediaData, ThrowOnError>): RequestResult<UploadMediaResponses, UploadMediaErrors, ThrowOnError>;
1624
+ /**
1625
+ * Get media
1626
+ *
1627
+ * Return one media file by ID, including its URL, source, and usage count.
1628
+ */
1629
+ static getMedia<ThrowOnError extends boolean = false>(options: Options<GetMediaData, ThrowOnError>): RequestResult<GetMediaResponses, GetMediaErrors, ThrowOnError>;
1630
+ }
1631
+
1632
+ declare const zApiErrorCode: z.ZodMiniEnum<{
1633
+ missing_auth: "missing_auth";
1634
+ invalid_auth_format: "invalid_auth_format";
1635
+ invalid_api_key: "invalid_api_key";
1636
+ api_key_expired: "api_key_expired";
1637
+ insufficient_scope: "insufficient_scope";
1638
+ validation_failed: "validation_failed";
1639
+ route_not_found: "route_not_found";
1640
+ internal_server_error: "internal_server_error";
1641
+ rate_limit_exceeded: "rate_limit_exceeded";
1642
+ post_not_found: "post_not_found";
1643
+ post_forbidden: "post_forbidden";
1644
+ post_not_editable: "post_not_editable";
1645
+ media_not_found: "media_not_found";
1646
+ media_in_use: "media_in_use";
1647
+ storage_limit_exceeded: "storage_limit_exceeded";
1648
+ free_media_limit_exceeded: "free_media_limit_exceeded";
1649
+ free_pending_media_limit_exceeded: "free_pending_media_limit_exceeded";
1650
+ file_required: "file_required";
1651
+ file_too_large: "file_too_large";
1652
+ unsupported_file_type: "unsupported_file_type";
1653
+ unsupported_media_type: "unsupported_media_type";
1654
+ invalid_file_extension: "invalid_file_extension";
1655
+ social_accounts_not_found: "social_accounts_not_found";
1656
+ social_accounts_expired: "social_accounts_expired";
1657
+ platform_validation_failed: "platform_validation_failed";
1658
+ posting_limits_exceeded: "posting_limits_exceeded";
1659
+ scheduled_at_required: "scheduled_at_required";
1660
+ invalid_scheduled_at: "invalid_scheduled_at";
1661
+ scheduled_at_too_soon: "scheduled_at_too_soon";
1662
+ reschedulable_posts_not_found: "reschedulable_posts_not_found";
1663
+ workspace_not_found: "workspace_not_found";
1664
+ workspace_forbidden: "workspace_forbidden";
1665
+ workspace_owner_required: "workspace_owner_required";
1666
+ workspace_account_not_found: "workspace_account_not_found";
1667
+ workspace_account_conflict: "workspace_account_conflict";
1668
+ workspace_member_not_found: "workspace_member_not_found";
1669
+ workspace_member_conflict: "workspace_member_conflict";
1670
+ workspace_invitation_invalid: "workspace_invitation_invalid";
1671
+ workspace_invitation_expired: "workspace_invitation_expired";
1672
+ }>;
1673
+ declare const zApiError: z.ZodMiniObject<{
1674
+ error: z.ZodMiniObject<{
1675
+ title: z.ZodMiniString<string>;
1676
+ status: z.ZodMiniNumberFormat;
1677
+ code: z.ZodMiniEnum<{
1678
+ missing_auth: "missing_auth";
1679
+ invalid_auth_format: "invalid_auth_format";
1680
+ invalid_api_key: "invalid_api_key";
1681
+ api_key_expired: "api_key_expired";
1682
+ insufficient_scope: "insufficient_scope";
1683
+ validation_failed: "validation_failed";
1684
+ route_not_found: "route_not_found";
1685
+ internal_server_error: "internal_server_error";
1686
+ rate_limit_exceeded: "rate_limit_exceeded";
1687
+ post_not_found: "post_not_found";
1688
+ post_forbidden: "post_forbidden";
1689
+ post_not_editable: "post_not_editable";
1690
+ media_not_found: "media_not_found";
1691
+ media_in_use: "media_in_use";
1692
+ storage_limit_exceeded: "storage_limit_exceeded";
1693
+ free_media_limit_exceeded: "free_media_limit_exceeded";
1694
+ free_pending_media_limit_exceeded: "free_pending_media_limit_exceeded";
1695
+ file_required: "file_required";
1696
+ file_too_large: "file_too_large";
1697
+ unsupported_file_type: "unsupported_file_type";
1698
+ unsupported_media_type: "unsupported_media_type";
1699
+ invalid_file_extension: "invalid_file_extension";
1700
+ social_accounts_not_found: "social_accounts_not_found";
1701
+ social_accounts_expired: "social_accounts_expired";
1702
+ platform_validation_failed: "platform_validation_failed";
1703
+ posting_limits_exceeded: "posting_limits_exceeded";
1704
+ scheduled_at_required: "scheduled_at_required";
1705
+ invalid_scheduled_at: "invalid_scheduled_at";
1706
+ scheduled_at_too_soon: "scheduled_at_too_soon";
1707
+ reschedulable_posts_not_found: "reschedulable_posts_not_found";
1708
+ workspace_not_found: "workspace_not_found";
1709
+ workspace_forbidden: "workspace_forbidden";
1710
+ workspace_owner_required: "workspace_owner_required";
1711
+ workspace_account_not_found: "workspace_account_not_found";
1712
+ workspace_account_conflict: "workspace_account_conflict";
1713
+ workspace_member_not_found: "workspace_member_not_found";
1714
+ workspace_member_conflict: "workspace_member_conflict";
1715
+ workspace_invitation_invalid: "workspace_invitation_invalid";
1716
+ workspace_invitation_expired: "workspace_invitation_expired";
1717
+ }>;
1718
+ message: z.ZodMiniString<string>;
1719
+ instance: z.ZodMiniOptional<z.ZodMiniString<string>>;
1720
+ details: z.ZodMiniOptional<z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniUnknown>>>;
1721
+ }, z.z.core.$strip>;
1722
+ }, z.z.core.$strip>;
1723
+ declare const zPagination: z.ZodMiniObject<{
1724
+ page: z.ZodMiniNumberFormat;
1725
+ limit: z.ZodMiniNumberFormat;
1726
+ total: z.ZodMiniNumberFormat;
1727
+ totalPages: z.ZodMiniNumberFormat;
1728
+ hasNext: z.ZodMiniBoolean<boolean>;
1729
+ hasPrev: z.ZodMiniBoolean<boolean>;
1730
+ }, z.z.core.$strip>;
1731
+ /**
1732
+ * BlueskyPlatformSpecificSettings
1733
+ *
1734
+ * Bluesky-specific publishing settings. No settings are currently available.
1735
+ */
1736
+ declare const zBlueskyPlatformSpecificSettings: z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniNever>;
1737
+ /**
1738
+ * InstagramPlatformSpecificSettings
1739
+ *
1740
+ * Instagram-specific post settings. All fields are optional — omit the entire object for a regular feed post or carousel.
1741
+ */
1742
+ declare const zInstagramPlatformSpecificSettings: z.ZodMiniObject<{
1743
+ contentType: z.ZodMiniOptional<z.ZodMiniEnum<{
1744
+ story: "story";
1745
+ reels: "reels";
1746
+ }>>;
1747
+ shareToFeed: z.ZodMiniOptional<z.ZodMiniBoolean<boolean>>;
1748
+ trialParams: z.ZodMiniOptional<z.ZodMiniObject<{
1749
+ graduationStrategy: z.ZodMiniEnum<{
1750
+ MANUAL: "MANUAL";
1751
+ SS_PERFORMANCE: "SS_PERFORMANCE";
1752
+ }>;
1753
+ }, z.z.core.$strip>>;
1754
+ audioName: z.ZodMiniOptional<z.ZodMiniString<string>>;
1755
+ }, z.z.core.$strip>;
1756
+ /**
1757
+ * FacebookPlatformSpecificSettings
1758
+ *
1759
+ * Facebook-specific post settings. All fields are optional — omit the entire object for a regular post.
1760
+ */
1761
+ declare const zFacebookPlatformSpecificSettings: z.ZodMiniObject<{
1762
+ contentType: z.ZodMiniOptional<z.ZodMiniEnum<{
1763
+ story: "story";
1764
+ }>>;
1765
+ }, z.z.core.$strip>;
1766
+ /**
1767
+ * InstagramTrialParams
1768
+ *
1769
+ * Trial reel graduation settings. Trial reels are shown only to non-followers first. If the reel performs well (SS_PERFORMANCE) or you manually approve it (MANUAL), it gets promoted to a regular reel visible to followers.
1770
+ */
1771
+ declare const zInstagramTrialParams: z.ZodMiniObject<{
1772
+ graduationStrategy: z.ZodMiniEnum<{
1773
+ MANUAL: "MANUAL";
1774
+ SS_PERFORMANCE: "SS_PERFORMANCE";
1775
+ }>;
1776
+ }, z.z.core.$strip>;
1777
+ /**
1778
+ * YouTubePlatformSpecificSettings
1779
+ *
1780
+ * YouTube-specific upload settings, such as description and privacy.
1781
+ */
1782
+ declare const zYouTubePlatformSpecificSettings: z.ZodMiniObject<{
1783
+ description: z.ZodMiniOptional<z.ZodMiniString<string>>;
1784
+ privacyStatus: z.ZodMiniOptional<z.ZodMiniEnum<{
1785
+ public: "public";
1786
+ unlisted: "unlisted";
1787
+ private: "private";
1788
+ }>>;
1789
+ madeForKids: z.ZodMiniOptional<z.ZodMiniBoolean<boolean>>;
1790
+ containsSyntheticMedia: z.ZodMiniOptional<z.ZodMiniBoolean<boolean>>;
1791
+ categoryId: z.ZodMiniOptional<z.ZodMiniEnum<{
1792
+ 1: "1";
1793
+ 2: "2";
1794
+ 10: "10";
1795
+ 15: "15";
1796
+ 17: "17";
1797
+ 19: "19";
1798
+ 20: "20";
1799
+ 22: "22";
1800
+ 23: "23";
1801
+ 24: "24";
1802
+ 25: "25";
1803
+ 26: "26";
1804
+ 27: "27";
1805
+ 28: "28";
1806
+ 29: "29";
1807
+ }>>;
1808
+ tags: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniString<string>>>;
1809
+ embeddable: z.ZodMiniOptional<z.ZodMiniBoolean<boolean>>;
1810
+ playlistId: z.ZodMiniOptional<z.ZodMiniString<string>>;
1811
+ }, z.z.core.$strip>;
1812
+ /**
1813
+ * TikTokPlatformSpecificSettings
1814
+ *
1815
+ * TikTok-specific publishing settings. Privacy level and brand toggles are required for all posts. Duet/stitch settings only apply to video posts. autoAddMusic only applies to photo posts.
1816
+ */
1817
+ declare const zTikTokPlatformSpecificSettings: z.ZodMiniObject<{
1818
+ privacyLevel: z.ZodMiniEnum<{
1819
+ PUBLIC_TO_EVERYONE: "PUBLIC_TO_EVERYONE";
1820
+ FOLLOWER_OF_CREATOR: "FOLLOWER_OF_CREATOR";
1821
+ MUTUAL_FOLLOW_FRIENDS: "MUTUAL_FOLLOW_FRIENDS";
1822
+ SELF_ONLY: "SELF_ONLY";
1823
+ }>;
1824
+ disableComment: z.ZodMiniBoolean<boolean>;
1825
+ disableDuet: z.ZodMiniBoolean<boolean>;
1826
+ disableStitch: z.ZodMiniBoolean<boolean>;
1827
+ brandContentToggle: z.ZodMiniBoolean<boolean>;
1828
+ brandOrganicToggle: z.ZodMiniBoolean<boolean>;
1829
+ autoAddMusic: z.ZodMiniOptional<z.ZodMiniBoolean<boolean>>;
1830
+ videoMadeWithAi: z.ZodMiniOptional<z.ZodMiniBoolean<boolean>>;
1831
+ description: z.ZodMiniOptional<z.ZodMiniString<string>>;
1832
+ photoCoverIndex: z.ZodMiniOptional<z.ZodMiniNumberFormat>;
1833
+ }, z.z.core.$strip>;
1834
+ /**
1835
+ * LinkedInPlatformSpecificSettings
1836
+ *
1837
+ * LinkedIn-specific publishing settings, such as post visibility.
1838
+ */
1839
+ declare const zLinkedInPlatformSpecificSettings: z.ZodMiniObject<{
1840
+ visibility: z.ZodMiniOptional<z.ZodMiniEnum<{
1841
+ CONNECTIONS: "CONNECTIONS";
1842
+ PUBLIC: "PUBLIC";
1843
+ }>>;
1844
+ }, z.z.core.$strip>;
1845
+ /**
1846
+ * ThreadsPlatformSpecificSettings
1847
+ *
1848
+ * Threads-specific publishing settings.
1849
+ */
1850
+ declare const zThreadsPlatformSpecificSettings: z.ZodMiniObject<{
1851
+ topicTag: z.ZodMiniOptional<z.ZodMiniString<string>>;
1852
+ }, z.z.core.$strip>;
1853
+ /**
1854
+ * TwitterPlatformSpecificSettings
1855
+ *
1856
+ * X (Twitter) specific post settings. All fields are optional.
1857
+ */
1858
+ declare const zTwitterPlatformSpecificSettings: z.ZodMiniObject<{
1859
+ communityId: z.ZodMiniOptional<z.ZodMiniString<string>>;
1860
+ shareWithFollowers: z.ZodMiniOptional<z.ZodMiniBoolean<boolean>>;
1861
+ forSuperFollowersOnly: z.ZodMiniOptional<z.ZodMiniBoolean<boolean>>;
1862
+ replySettings: z.ZodMiniOptional<z.ZodMiniEnum<{
1863
+ following: "following";
1864
+ mentionedUsers: "mentionedUsers";
1865
+ subscribers: "subscribers";
1866
+ verified: "verified";
1867
+ }>>;
1868
+ quoteTweetId: z.ZodMiniOptional<z.ZodMiniString<string>>;
1869
+ replyToTweetId: z.ZodMiniOptional<z.ZodMiniString<string>>;
1870
+ poll: z.ZodMiniOptional<z.ZodMiniObject<{
1871
+ options: z.ZodMiniArray<z.ZodMiniString<string>>;
1872
+ durationMinutes: z.ZodMiniNumberFormat;
1873
+ }, z.z.core.$strip>>;
1874
+ }, z.z.core.$strip>;
1875
+ declare const zSocialPlatform: z.ZodMiniEnum<{
1876
+ TWITTER: "TWITTER";
1877
+ INSTAGRAM: "INSTAGRAM";
1878
+ FACEBOOK: "FACEBOOK";
1879
+ LINKEDIN: "LINKEDIN";
1880
+ YOUTUBE: "YOUTUBE";
1881
+ TIKTOK: "TIKTOK";
1882
+ THREADS: "THREADS";
1883
+ BLUESKY: "BLUESKY";
1884
+ }>;
1885
+ declare const zPostStatus: z.ZodMiniEnum<{
1886
+ DRAFT: "DRAFT";
1887
+ SCHEDULED: "SCHEDULED";
1888
+ PUBLISHING: "PUBLISHING";
1889
+ PUBLISHED: "PUBLISHED";
1890
+ FAILED: "FAILED";
1891
+ }>;
1892
+ declare const zPostOverrides: z.ZodMiniObject<{
1893
+ content: z.ZodMiniOptional<z.ZodMiniString<string>>;
1894
+ thumbnailTimestamp: z.ZodMiniOptional<z.ZodMiniNumberFormat>;
1895
+ mediaIds: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniUUID>>;
1896
+ }, z.z.core.$strip>;
1897
+ /**
1898
+ * Platform-specific settings for this account. The accepted shape depends on the account platform.
1899
+ */
1900
+ declare const zPlatformSpecificSettings: z.ZodMiniUnion<readonly [z.ZodMiniObject<{
1901
+ description: z.ZodMiniOptional<z.ZodMiniString<string>>;
1902
+ privacyStatus: z.ZodMiniOptional<z.ZodMiniEnum<{
1903
+ public: "public";
1904
+ unlisted: "unlisted";
1905
+ private: "private";
1906
+ }>>;
1907
+ madeForKids: z.ZodMiniOptional<z.ZodMiniBoolean<boolean>>;
1908
+ containsSyntheticMedia: z.ZodMiniOptional<z.ZodMiniBoolean<boolean>>;
1909
+ categoryId: z.ZodMiniOptional<z.ZodMiniEnum<{
1910
+ 1: "1";
1911
+ 2: "2";
1912
+ 10: "10";
1913
+ 15: "15";
1914
+ 17: "17";
1915
+ 19: "19";
1916
+ 20: "20";
1917
+ 22: "22";
1918
+ 23: "23";
1919
+ 24: "24";
1920
+ 25: "25";
1921
+ 26: "26";
1922
+ 27: "27";
1923
+ 28: "28";
1924
+ 29: "29";
1925
+ }>>;
1926
+ tags: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniString<string>>>;
1927
+ embeddable: z.ZodMiniOptional<z.ZodMiniBoolean<boolean>>;
1928
+ playlistId: z.ZodMiniOptional<z.ZodMiniString<string>>;
1929
+ }, z.z.core.$strip>, z.ZodMiniObject<{
1930
+ privacyLevel: z.ZodMiniEnum<{
1931
+ PUBLIC_TO_EVERYONE: "PUBLIC_TO_EVERYONE";
1932
+ FOLLOWER_OF_CREATOR: "FOLLOWER_OF_CREATOR";
1933
+ MUTUAL_FOLLOW_FRIENDS: "MUTUAL_FOLLOW_FRIENDS";
1934
+ SELF_ONLY: "SELF_ONLY";
1935
+ }>;
1936
+ disableComment: z.ZodMiniBoolean<boolean>;
1937
+ disableDuet: z.ZodMiniBoolean<boolean>;
1938
+ disableStitch: z.ZodMiniBoolean<boolean>;
1939
+ brandContentToggle: z.ZodMiniBoolean<boolean>;
1940
+ brandOrganicToggle: z.ZodMiniBoolean<boolean>;
1941
+ autoAddMusic: z.ZodMiniOptional<z.ZodMiniBoolean<boolean>>;
1942
+ videoMadeWithAi: z.ZodMiniOptional<z.ZodMiniBoolean<boolean>>;
1943
+ description: z.ZodMiniOptional<z.ZodMiniString<string>>;
1944
+ photoCoverIndex: z.ZodMiniOptional<z.ZodMiniNumberFormat>;
1945
+ }, z.z.core.$strip>, z.ZodMiniObject<{
1946
+ contentType: z.ZodMiniOptional<z.ZodMiniEnum<{
1947
+ story: "story";
1948
+ reels: "reels";
1949
+ }>>;
1950
+ shareToFeed: z.ZodMiniOptional<z.ZodMiniBoolean<boolean>>;
1951
+ trialParams: z.ZodMiniOptional<z.ZodMiniObject<{
1952
+ graduationStrategy: z.ZodMiniEnum<{
1953
+ MANUAL: "MANUAL";
1954
+ SS_PERFORMANCE: "SS_PERFORMANCE";
1955
+ }>;
1956
+ }, z.z.core.$strip>>;
1957
+ audioName: z.ZodMiniOptional<z.ZodMiniString<string>>;
1958
+ }, z.z.core.$strip>, z.ZodMiniObject<{
1959
+ contentType: z.ZodMiniOptional<z.ZodMiniEnum<{
1960
+ story: "story";
1961
+ }>>;
1962
+ }, z.z.core.$strip>, z.ZodMiniObject<{
1963
+ topicTag: z.ZodMiniOptional<z.ZodMiniString<string>>;
1964
+ }, z.z.core.$strip>, z.ZodMiniObject<{
1965
+ communityId: z.ZodMiniOptional<z.ZodMiniString<string>>;
1966
+ shareWithFollowers: z.ZodMiniOptional<z.ZodMiniBoolean<boolean>>;
1967
+ forSuperFollowersOnly: z.ZodMiniOptional<z.ZodMiniBoolean<boolean>>;
1968
+ replySettings: z.ZodMiniOptional<z.ZodMiniEnum<{
1969
+ following: "following";
1970
+ mentionedUsers: "mentionedUsers";
1971
+ subscribers: "subscribers";
1972
+ verified: "verified";
1973
+ }>>;
1974
+ quoteTweetId: z.ZodMiniOptional<z.ZodMiniString<string>>;
1975
+ replyToTweetId: z.ZodMiniOptional<z.ZodMiniString<string>>;
1976
+ poll: z.ZodMiniOptional<z.ZodMiniObject<{
1977
+ options: z.ZodMiniArray<z.ZodMiniString<string>>;
1978
+ durationMinutes: z.ZodMiniNumberFormat;
1979
+ }, z.z.core.$strip>>;
1980
+ }, z.z.core.$strip>, z.ZodMiniObject<{
1981
+ visibility: z.ZodMiniOptional<z.ZodMiniEnum<{
1982
+ CONNECTIONS: "CONNECTIONS";
1983
+ PUBLIC: "PUBLIC";
1984
+ }>>;
1985
+ }, z.z.core.$strip>, z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniNever>, z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniUnknown>]>;
1986
+ declare const zPostAccount: z.ZodMiniObject<{
1987
+ accountId: z.ZodMiniUUID;
1988
+ platform: z.ZodMiniEnum<{
1989
+ TWITTER: "TWITTER";
1990
+ INSTAGRAM: "INSTAGRAM";
1991
+ FACEBOOK: "FACEBOOK";
1992
+ LINKEDIN: "LINKEDIN";
1993
+ YOUTUBE: "YOUTUBE";
1994
+ TIKTOK: "TIKTOK";
1995
+ THREADS: "THREADS";
1996
+ BLUESKY: "BLUESKY";
1997
+ }>;
1998
+ accountName: z.ZodMiniString<string>;
1999
+ status: z.ZodMiniEnum<{
2000
+ DRAFT: "DRAFT";
2001
+ SCHEDULED: "SCHEDULED";
2002
+ PUBLISHING: "PUBLISHING";
2003
+ PUBLISHED: "PUBLISHED";
2004
+ FAILED: "FAILED";
2005
+ }>;
2006
+ externalUrl: z.ZodMiniOptional<z.ZodMiniURL>;
2007
+ publishedAt: z.ZodMiniOptional<z.z.iso.ZodMiniISODateTime>;
2008
+ errorMessage: z.ZodMiniOptional<z.ZodMiniString<string>>;
2009
+ postOverrides: z.ZodMiniOptional<z.ZodMiniObject<{
2010
+ content: z.ZodMiniOptional<z.ZodMiniString<string>>;
2011
+ thumbnailTimestamp: z.ZodMiniOptional<z.ZodMiniNumberFormat>;
2012
+ mediaIds: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniUUID>>;
2013
+ }, z.z.core.$strip>>;
2014
+ platformSpecificSettings: z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniObject<{
2015
+ description: z.ZodMiniOptional<z.ZodMiniString<string>>;
2016
+ privacyStatus: z.ZodMiniOptional<z.ZodMiniEnum<{
2017
+ public: "public";
2018
+ unlisted: "unlisted";
2019
+ private: "private";
2020
+ }>>;
2021
+ madeForKids: z.ZodMiniOptional<z.ZodMiniBoolean<boolean>>;
2022
+ containsSyntheticMedia: z.ZodMiniOptional<z.ZodMiniBoolean<boolean>>;
2023
+ categoryId: z.ZodMiniOptional<z.ZodMiniEnum<{
2024
+ 1: "1";
2025
+ 2: "2";
2026
+ 10: "10";
2027
+ 15: "15";
2028
+ 17: "17";
2029
+ 19: "19";
2030
+ 20: "20";
2031
+ 22: "22";
2032
+ 23: "23";
2033
+ 24: "24";
2034
+ 25: "25";
2035
+ 26: "26";
2036
+ 27: "27";
2037
+ 28: "28";
2038
+ 29: "29";
2039
+ }>>;
2040
+ tags: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniString<string>>>;
2041
+ embeddable: z.ZodMiniOptional<z.ZodMiniBoolean<boolean>>;
2042
+ playlistId: z.ZodMiniOptional<z.ZodMiniString<string>>;
2043
+ }, z.z.core.$strip>, z.ZodMiniObject<{
2044
+ privacyLevel: z.ZodMiniEnum<{
2045
+ PUBLIC_TO_EVERYONE: "PUBLIC_TO_EVERYONE";
2046
+ FOLLOWER_OF_CREATOR: "FOLLOWER_OF_CREATOR";
2047
+ MUTUAL_FOLLOW_FRIENDS: "MUTUAL_FOLLOW_FRIENDS";
2048
+ SELF_ONLY: "SELF_ONLY";
2049
+ }>;
2050
+ disableComment: z.ZodMiniBoolean<boolean>;
2051
+ disableDuet: z.ZodMiniBoolean<boolean>;
2052
+ disableStitch: z.ZodMiniBoolean<boolean>;
2053
+ brandContentToggle: z.ZodMiniBoolean<boolean>;
2054
+ brandOrganicToggle: z.ZodMiniBoolean<boolean>;
2055
+ autoAddMusic: z.ZodMiniOptional<z.ZodMiniBoolean<boolean>>;
2056
+ videoMadeWithAi: z.ZodMiniOptional<z.ZodMiniBoolean<boolean>>;
2057
+ description: z.ZodMiniOptional<z.ZodMiniString<string>>;
2058
+ photoCoverIndex: z.ZodMiniOptional<z.ZodMiniNumberFormat>;
2059
+ }, z.z.core.$strip>, z.ZodMiniObject<{
2060
+ contentType: z.ZodMiniOptional<z.ZodMiniEnum<{
2061
+ story: "story";
2062
+ reels: "reels";
2063
+ }>>;
2064
+ shareToFeed: z.ZodMiniOptional<z.ZodMiniBoolean<boolean>>;
2065
+ trialParams: z.ZodMiniOptional<z.ZodMiniObject<{
2066
+ graduationStrategy: z.ZodMiniEnum<{
2067
+ MANUAL: "MANUAL";
2068
+ SS_PERFORMANCE: "SS_PERFORMANCE";
2069
+ }>;
2070
+ }, z.z.core.$strip>>;
2071
+ audioName: z.ZodMiniOptional<z.ZodMiniString<string>>;
2072
+ }, z.z.core.$strip>, z.ZodMiniObject<{
2073
+ contentType: z.ZodMiniOptional<z.ZodMiniEnum<{
2074
+ story: "story";
2075
+ }>>;
2076
+ }, z.z.core.$strip>, z.ZodMiniObject<{
2077
+ topicTag: z.ZodMiniOptional<z.ZodMiniString<string>>;
2078
+ }, z.z.core.$strip>, z.ZodMiniObject<{
2079
+ communityId: z.ZodMiniOptional<z.ZodMiniString<string>>;
2080
+ shareWithFollowers: z.ZodMiniOptional<z.ZodMiniBoolean<boolean>>;
2081
+ forSuperFollowersOnly: z.ZodMiniOptional<z.ZodMiniBoolean<boolean>>;
2082
+ replySettings: z.ZodMiniOptional<z.ZodMiniEnum<{
2083
+ following: "following";
2084
+ mentionedUsers: "mentionedUsers";
2085
+ subscribers: "subscribers";
2086
+ verified: "verified";
2087
+ }>>;
2088
+ quoteTweetId: z.ZodMiniOptional<z.ZodMiniString<string>>;
2089
+ replyToTweetId: z.ZodMiniOptional<z.ZodMiniString<string>>;
2090
+ poll: z.ZodMiniOptional<z.ZodMiniObject<{
2091
+ options: z.ZodMiniArray<z.ZodMiniString<string>>;
2092
+ durationMinutes: z.ZodMiniNumberFormat;
2093
+ }, z.z.core.$strip>>;
2094
+ }, z.z.core.$strip>, z.ZodMiniObject<{
2095
+ visibility: z.ZodMiniOptional<z.ZodMiniEnum<{
2096
+ CONNECTIONS: "CONNECTIONS";
2097
+ PUBLIC: "PUBLIC";
2098
+ }>>;
2099
+ }, z.z.core.$strip>, z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniNever>, z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniUnknown>]>>;
2100
+ }, z.z.core.$strip>;
2101
+ declare const zPost: z.ZodMiniObject<{
2102
+ id: z.ZodMiniUUID;
2103
+ content: z.ZodMiniString<string>;
2104
+ status: z.ZodMiniEnum<{
2105
+ DRAFT: "DRAFT";
2106
+ SCHEDULED: "SCHEDULED";
2107
+ PUBLISHING: "PUBLISHING";
2108
+ PUBLISHED: "PUBLISHED";
2109
+ FAILED: "FAILED";
2110
+ }>;
2111
+ errorMessage: z.ZodMiniOptional<z.ZodMiniString<string>>;
2112
+ mediaIds: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniUUID>>;
2113
+ deletedMediaCount: z.ZodMiniOptional<z.ZodMiniNumberFormat>;
2114
+ scheduledAt: z.ZodMiniOptional<z.z.iso.ZodMiniISODateTime>;
2115
+ publishedAt: z.ZodMiniOptional<z.z.iso.ZodMiniISODateTime>;
2116
+ createdAt: z.z.iso.ZodMiniISODateTime;
2117
+ accounts: z.ZodMiniArray<z.ZodMiniObject<{
2118
+ accountId: z.ZodMiniUUID;
2119
+ platform: z.ZodMiniEnum<{
2120
+ TWITTER: "TWITTER";
2121
+ INSTAGRAM: "INSTAGRAM";
2122
+ FACEBOOK: "FACEBOOK";
2123
+ LINKEDIN: "LINKEDIN";
2124
+ YOUTUBE: "YOUTUBE";
2125
+ TIKTOK: "TIKTOK";
2126
+ THREADS: "THREADS";
2127
+ BLUESKY: "BLUESKY";
2128
+ }>;
2129
+ accountName: z.ZodMiniString<string>;
2130
+ status: z.ZodMiniEnum<{
2131
+ DRAFT: "DRAFT";
2132
+ SCHEDULED: "SCHEDULED";
2133
+ PUBLISHING: "PUBLISHING";
2134
+ PUBLISHED: "PUBLISHED";
2135
+ FAILED: "FAILED";
2136
+ }>;
2137
+ externalUrl: z.ZodMiniOptional<z.ZodMiniURL>;
2138
+ publishedAt: z.ZodMiniOptional<z.z.iso.ZodMiniISODateTime>;
2139
+ errorMessage: z.ZodMiniOptional<z.ZodMiniString<string>>;
2140
+ postOverrides: z.ZodMiniOptional<z.ZodMiniObject<{
2141
+ content: z.ZodMiniOptional<z.ZodMiniString<string>>;
2142
+ thumbnailTimestamp: z.ZodMiniOptional<z.ZodMiniNumberFormat>;
2143
+ mediaIds: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniUUID>>;
2144
+ }, z.z.core.$strip>>;
2145
+ platformSpecificSettings: z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniObject<{
2146
+ description: z.ZodMiniOptional<z.ZodMiniString<string>>;
2147
+ privacyStatus: z.ZodMiniOptional<z.ZodMiniEnum<{
2148
+ public: "public";
2149
+ unlisted: "unlisted";
2150
+ private: "private";
2151
+ }>>;
2152
+ madeForKids: z.ZodMiniOptional<z.ZodMiniBoolean<boolean>>;
2153
+ containsSyntheticMedia: z.ZodMiniOptional<z.ZodMiniBoolean<boolean>>;
2154
+ categoryId: z.ZodMiniOptional<z.ZodMiniEnum<{
2155
+ 1: "1";
2156
+ 2: "2";
2157
+ 10: "10";
2158
+ 15: "15";
2159
+ 17: "17";
2160
+ 19: "19";
2161
+ 20: "20";
2162
+ 22: "22";
2163
+ 23: "23";
2164
+ 24: "24";
2165
+ 25: "25";
2166
+ 26: "26";
2167
+ 27: "27";
2168
+ 28: "28";
2169
+ 29: "29";
2170
+ }>>;
2171
+ tags: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniString<string>>>;
2172
+ embeddable: z.ZodMiniOptional<z.ZodMiniBoolean<boolean>>;
2173
+ playlistId: z.ZodMiniOptional<z.ZodMiniString<string>>;
2174
+ }, z.z.core.$strip>, z.ZodMiniObject<{
2175
+ privacyLevel: z.ZodMiniEnum<{
2176
+ PUBLIC_TO_EVERYONE: "PUBLIC_TO_EVERYONE";
2177
+ FOLLOWER_OF_CREATOR: "FOLLOWER_OF_CREATOR";
2178
+ MUTUAL_FOLLOW_FRIENDS: "MUTUAL_FOLLOW_FRIENDS";
2179
+ SELF_ONLY: "SELF_ONLY";
2180
+ }>;
2181
+ disableComment: z.ZodMiniBoolean<boolean>;
2182
+ disableDuet: z.ZodMiniBoolean<boolean>;
2183
+ disableStitch: z.ZodMiniBoolean<boolean>;
2184
+ brandContentToggle: z.ZodMiniBoolean<boolean>;
2185
+ brandOrganicToggle: z.ZodMiniBoolean<boolean>;
2186
+ autoAddMusic: z.ZodMiniOptional<z.ZodMiniBoolean<boolean>>;
2187
+ videoMadeWithAi: z.ZodMiniOptional<z.ZodMiniBoolean<boolean>>;
2188
+ description: z.ZodMiniOptional<z.ZodMiniString<string>>;
2189
+ photoCoverIndex: z.ZodMiniOptional<z.ZodMiniNumberFormat>;
2190
+ }, z.z.core.$strip>, z.ZodMiniObject<{
2191
+ contentType: z.ZodMiniOptional<z.ZodMiniEnum<{
2192
+ story: "story";
2193
+ reels: "reels";
2194
+ }>>;
2195
+ shareToFeed: z.ZodMiniOptional<z.ZodMiniBoolean<boolean>>;
2196
+ trialParams: z.ZodMiniOptional<z.ZodMiniObject<{
2197
+ graduationStrategy: z.ZodMiniEnum<{
2198
+ MANUAL: "MANUAL";
2199
+ SS_PERFORMANCE: "SS_PERFORMANCE";
2200
+ }>;
2201
+ }, z.z.core.$strip>>;
2202
+ audioName: z.ZodMiniOptional<z.ZodMiniString<string>>;
2203
+ }, z.z.core.$strip>, z.ZodMiniObject<{
2204
+ contentType: z.ZodMiniOptional<z.ZodMiniEnum<{
2205
+ story: "story";
2206
+ }>>;
2207
+ }, z.z.core.$strip>, z.ZodMiniObject<{
2208
+ topicTag: z.ZodMiniOptional<z.ZodMiniString<string>>;
2209
+ }, z.z.core.$strip>, z.ZodMiniObject<{
2210
+ communityId: z.ZodMiniOptional<z.ZodMiniString<string>>;
2211
+ shareWithFollowers: z.ZodMiniOptional<z.ZodMiniBoolean<boolean>>;
2212
+ forSuperFollowersOnly: z.ZodMiniOptional<z.ZodMiniBoolean<boolean>>;
2213
+ replySettings: z.ZodMiniOptional<z.ZodMiniEnum<{
2214
+ following: "following";
2215
+ mentionedUsers: "mentionedUsers";
2216
+ subscribers: "subscribers";
2217
+ verified: "verified";
2218
+ }>>;
2219
+ quoteTweetId: z.ZodMiniOptional<z.ZodMiniString<string>>;
2220
+ replyToTweetId: z.ZodMiniOptional<z.ZodMiniString<string>>;
2221
+ poll: z.ZodMiniOptional<z.ZodMiniObject<{
2222
+ options: z.ZodMiniArray<z.ZodMiniString<string>>;
2223
+ durationMinutes: z.ZodMiniNumberFormat;
2224
+ }, z.z.core.$strip>>;
2225
+ }, z.z.core.$strip>, z.ZodMiniObject<{
2226
+ visibility: z.ZodMiniOptional<z.ZodMiniEnum<{
2227
+ CONNECTIONS: "CONNECTIONS";
2228
+ PUBLIC: "PUBLIC";
2229
+ }>>;
2230
+ }, z.z.core.$strip>, z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniNever>, z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniUnknown>]>>;
2231
+ }, z.z.core.$strip>>;
2232
+ }, z.z.core.$strip>;
2233
+ declare const zPostsResponse: z.ZodMiniObject<{
2234
+ posts: z.ZodMiniArray<z.ZodMiniObject<{
2235
+ id: z.ZodMiniUUID;
2236
+ content: z.ZodMiniString<string>;
2237
+ status: z.ZodMiniEnum<{
2238
+ DRAFT: "DRAFT";
2239
+ SCHEDULED: "SCHEDULED";
2240
+ PUBLISHING: "PUBLISHING";
2241
+ PUBLISHED: "PUBLISHED";
2242
+ FAILED: "FAILED";
2243
+ }>;
2244
+ errorMessage: z.ZodMiniOptional<z.ZodMiniString<string>>;
2245
+ mediaIds: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniUUID>>;
2246
+ deletedMediaCount: z.ZodMiniOptional<z.ZodMiniNumberFormat>;
2247
+ scheduledAt: z.ZodMiniOptional<z.z.iso.ZodMiniISODateTime>;
2248
+ publishedAt: z.ZodMiniOptional<z.z.iso.ZodMiniISODateTime>;
2249
+ createdAt: z.z.iso.ZodMiniISODateTime;
2250
+ accounts: z.ZodMiniArray<z.ZodMiniObject<{
2251
+ accountId: z.ZodMiniUUID;
2252
+ platform: z.ZodMiniEnum<{
2253
+ TWITTER: "TWITTER";
2254
+ INSTAGRAM: "INSTAGRAM";
2255
+ FACEBOOK: "FACEBOOK";
2256
+ LINKEDIN: "LINKEDIN";
2257
+ YOUTUBE: "YOUTUBE";
2258
+ TIKTOK: "TIKTOK";
2259
+ THREADS: "THREADS";
2260
+ BLUESKY: "BLUESKY";
2261
+ }>;
2262
+ accountName: z.ZodMiniString<string>;
2263
+ status: z.ZodMiniEnum<{
2264
+ DRAFT: "DRAFT";
2265
+ SCHEDULED: "SCHEDULED";
2266
+ PUBLISHING: "PUBLISHING";
2267
+ PUBLISHED: "PUBLISHED";
2268
+ FAILED: "FAILED";
2269
+ }>;
2270
+ externalUrl: z.ZodMiniOptional<z.ZodMiniURL>;
2271
+ publishedAt: z.ZodMiniOptional<z.z.iso.ZodMiniISODateTime>;
2272
+ errorMessage: z.ZodMiniOptional<z.ZodMiniString<string>>;
2273
+ postOverrides: z.ZodMiniOptional<z.ZodMiniObject<{
2274
+ content: z.ZodMiniOptional<z.ZodMiniString<string>>;
2275
+ thumbnailTimestamp: z.ZodMiniOptional<z.ZodMiniNumberFormat>;
2276
+ mediaIds: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniUUID>>;
2277
+ }, z.z.core.$strip>>;
2278
+ platformSpecificSettings: z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniObject<{
2279
+ description: z.ZodMiniOptional<z.ZodMiniString<string>>;
2280
+ privacyStatus: z.ZodMiniOptional<z.ZodMiniEnum<{
2281
+ public: "public";
2282
+ unlisted: "unlisted";
2283
+ private: "private";
2284
+ }>>;
2285
+ madeForKids: z.ZodMiniOptional<z.ZodMiniBoolean<boolean>>;
2286
+ containsSyntheticMedia: z.ZodMiniOptional<z.ZodMiniBoolean<boolean>>;
2287
+ categoryId: z.ZodMiniOptional<z.ZodMiniEnum<{
2288
+ 1: "1";
2289
+ 2: "2";
2290
+ 10: "10";
2291
+ 15: "15";
2292
+ 17: "17";
2293
+ 19: "19";
2294
+ 20: "20";
2295
+ 22: "22";
2296
+ 23: "23";
2297
+ 24: "24";
2298
+ 25: "25";
2299
+ 26: "26";
2300
+ 27: "27";
2301
+ 28: "28";
2302
+ 29: "29";
2303
+ }>>;
2304
+ tags: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniString<string>>>;
2305
+ embeddable: z.ZodMiniOptional<z.ZodMiniBoolean<boolean>>;
2306
+ playlistId: z.ZodMiniOptional<z.ZodMiniString<string>>;
2307
+ }, z.z.core.$strip>, z.ZodMiniObject<{
2308
+ privacyLevel: z.ZodMiniEnum<{
2309
+ PUBLIC_TO_EVERYONE: "PUBLIC_TO_EVERYONE";
2310
+ FOLLOWER_OF_CREATOR: "FOLLOWER_OF_CREATOR";
2311
+ MUTUAL_FOLLOW_FRIENDS: "MUTUAL_FOLLOW_FRIENDS";
2312
+ SELF_ONLY: "SELF_ONLY";
2313
+ }>;
2314
+ disableComment: z.ZodMiniBoolean<boolean>;
2315
+ disableDuet: z.ZodMiniBoolean<boolean>;
2316
+ disableStitch: z.ZodMiniBoolean<boolean>;
2317
+ brandContentToggle: z.ZodMiniBoolean<boolean>;
2318
+ brandOrganicToggle: z.ZodMiniBoolean<boolean>;
2319
+ autoAddMusic: z.ZodMiniOptional<z.ZodMiniBoolean<boolean>>;
2320
+ videoMadeWithAi: z.ZodMiniOptional<z.ZodMiniBoolean<boolean>>;
2321
+ description: z.ZodMiniOptional<z.ZodMiniString<string>>;
2322
+ photoCoverIndex: z.ZodMiniOptional<z.ZodMiniNumberFormat>;
2323
+ }, z.z.core.$strip>, z.ZodMiniObject<{
2324
+ contentType: z.ZodMiniOptional<z.ZodMiniEnum<{
2325
+ story: "story";
2326
+ reels: "reels";
2327
+ }>>;
2328
+ shareToFeed: z.ZodMiniOptional<z.ZodMiniBoolean<boolean>>;
2329
+ trialParams: z.ZodMiniOptional<z.ZodMiniObject<{
2330
+ graduationStrategy: z.ZodMiniEnum<{
2331
+ MANUAL: "MANUAL";
2332
+ SS_PERFORMANCE: "SS_PERFORMANCE";
2333
+ }>;
2334
+ }, z.z.core.$strip>>;
2335
+ audioName: z.ZodMiniOptional<z.ZodMiniString<string>>;
2336
+ }, z.z.core.$strip>, z.ZodMiniObject<{
2337
+ contentType: z.ZodMiniOptional<z.ZodMiniEnum<{
2338
+ story: "story";
2339
+ }>>;
2340
+ }, z.z.core.$strip>, z.ZodMiniObject<{
2341
+ topicTag: z.ZodMiniOptional<z.ZodMiniString<string>>;
2342
+ }, z.z.core.$strip>, z.ZodMiniObject<{
2343
+ communityId: z.ZodMiniOptional<z.ZodMiniString<string>>;
2344
+ shareWithFollowers: z.ZodMiniOptional<z.ZodMiniBoolean<boolean>>;
2345
+ forSuperFollowersOnly: z.ZodMiniOptional<z.ZodMiniBoolean<boolean>>;
2346
+ replySettings: z.ZodMiniOptional<z.ZodMiniEnum<{
2347
+ following: "following";
2348
+ mentionedUsers: "mentionedUsers";
2349
+ subscribers: "subscribers";
2350
+ verified: "verified";
2351
+ }>>;
2352
+ quoteTweetId: z.ZodMiniOptional<z.ZodMiniString<string>>;
2353
+ replyToTweetId: z.ZodMiniOptional<z.ZodMiniString<string>>;
2354
+ poll: z.ZodMiniOptional<z.ZodMiniObject<{
2355
+ options: z.ZodMiniArray<z.ZodMiniString<string>>;
2356
+ durationMinutes: z.ZodMiniNumberFormat;
2357
+ }, z.z.core.$strip>>;
2358
+ }, z.z.core.$strip>, z.ZodMiniObject<{
2359
+ visibility: z.ZodMiniOptional<z.ZodMiniEnum<{
2360
+ CONNECTIONS: "CONNECTIONS";
2361
+ PUBLIC: "PUBLIC";
2362
+ }>>;
2363
+ }, z.z.core.$strip>, z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniNever>, z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniUnknown>]>>;
2364
+ }, z.z.core.$strip>>;
2365
+ }, z.z.core.$strip>>;
2366
+ pagination: z.ZodMiniObject<{
2367
+ page: z.ZodMiniNumberFormat;
2368
+ limit: z.ZodMiniNumberFormat;
2369
+ total: z.ZodMiniNumberFormat;
2370
+ totalPages: z.ZodMiniNumberFormat;
2371
+ hasNext: z.ZodMiniBoolean<boolean>;
2372
+ hasPrev: z.ZodMiniBoolean<boolean>;
2373
+ }, z.z.core.$strip>;
2374
+ }, z.z.core.$strip>;
2375
+ declare const zCreatePostAccount: z.ZodMiniObject<{
2376
+ accountId: z.ZodMiniUUID;
2377
+ postOverrides: z.ZodMiniOptional<z.ZodMiniIntersection<z.ZodMiniObject<{
2378
+ content: z.ZodMiniOptional<z.ZodMiniString<string>>;
2379
+ thumbnailTimestamp: z.ZodMiniOptional<z.ZodMiniNumberFormat>;
2380
+ mediaIds: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniUUID>>;
2381
+ }, z.z.core.$strip>, z.ZodMiniUnknown>>;
2382
+ platformSpecificSettings: z.ZodMiniOptional<z.ZodMiniIntersection<z.ZodMiniUnion<readonly [z.ZodMiniObject<{
2383
+ description: z.ZodMiniOptional<z.ZodMiniString<string>>;
2384
+ privacyStatus: z.ZodMiniOptional<z.ZodMiniEnum<{
2385
+ public: "public";
2386
+ unlisted: "unlisted";
2387
+ private: "private";
2388
+ }>>;
2389
+ madeForKids: z.ZodMiniOptional<z.ZodMiniBoolean<boolean>>;
2390
+ containsSyntheticMedia: z.ZodMiniOptional<z.ZodMiniBoolean<boolean>>;
2391
+ categoryId: z.ZodMiniOptional<z.ZodMiniEnum<{
2392
+ 1: "1";
2393
+ 2: "2";
2394
+ 10: "10";
2395
+ 15: "15";
2396
+ 17: "17";
2397
+ 19: "19";
2398
+ 20: "20";
2399
+ 22: "22";
2400
+ 23: "23";
2401
+ 24: "24";
2402
+ 25: "25";
2403
+ 26: "26";
2404
+ 27: "27";
2405
+ 28: "28";
2406
+ 29: "29";
2407
+ }>>;
2408
+ tags: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniString<string>>>;
2409
+ embeddable: z.ZodMiniOptional<z.ZodMiniBoolean<boolean>>;
2410
+ playlistId: z.ZodMiniOptional<z.ZodMiniString<string>>;
2411
+ }, z.z.core.$strip>, z.ZodMiniObject<{
2412
+ privacyLevel: z.ZodMiniEnum<{
2413
+ PUBLIC_TO_EVERYONE: "PUBLIC_TO_EVERYONE";
2414
+ FOLLOWER_OF_CREATOR: "FOLLOWER_OF_CREATOR";
2415
+ MUTUAL_FOLLOW_FRIENDS: "MUTUAL_FOLLOW_FRIENDS";
2416
+ SELF_ONLY: "SELF_ONLY";
2417
+ }>;
2418
+ disableComment: z.ZodMiniBoolean<boolean>;
2419
+ disableDuet: z.ZodMiniBoolean<boolean>;
2420
+ disableStitch: z.ZodMiniBoolean<boolean>;
2421
+ brandContentToggle: z.ZodMiniBoolean<boolean>;
2422
+ brandOrganicToggle: z.ZodMiniBoolean<boolean>;
2423
+ autoAddMusic: z.ZodMiniOptional<z.ZodMiniBoolean<boolean>>;
2424
+ videoMadeWithAi: z.ZodMiniOptional<z.ZodMiniBoolean<boolean>>;
2425
+ description: z.ZodMiniOptional<z.ZodMiniString<string>>;
2426
+ photoCoverIndex: z.ZodMiniOptional<z.ZodMiniNumberFormat>;
2427
+ }, z.z.core.$strip>, z.ZodMiniObject<{
2428
+ contentType: z.ZodMiniOptional<z.ZodMiniEnum<{
2429
+ story: "story";
2430
+ reels: "reels";
2431
+ }>>;
2432
+ shareToFeed: z.ZodMiniOptional<z.ZodMiniBoolean<boolean>>;
2433
+ trialParams: z.ZodMiniOptional<z.ZodMiniObject<{
2434
+ graduationStrategy: z.ZodMiniEnum<{
2435
+ MANUAL: "MANUAL";
2436
+ SS_PERFORMANCE: "SS_PERFORMANCE";
2437
+ }>;
2438
+ }, z.z.core.$strip>>;
2439
+ audioName: z.ZodMiniOptional<z.ZodMiniString<string>>;
2440
+ }, z.z.core.$strip>, z.ZodMiniObject<{
2441
+ contentType: z.ZodMiniOptional<z.ZodMiniEnum<{
2442
+ story: "story";
2443
+ }>>;
2444
+ }, z.z.core.$strip>, z.ZodMiniObject<{
2445
+ topicTag: z.ZodMiniOptional<z.ZodMiniString<string>>;
2446
+ }, z.z.core.$strip>, z.ZodMiniObject<{
2447
+ communityId: z.ZodMiniOptional<z.ZodMiniString<string>>;
2448
+ shareWithFollowers: z.ZodMiniOptional<z.ZodMiniBoolean<boolean>>;
2449
+ forSuperFollowersOnly: z.ZodMiniOptional<z.ZodMiniBoolean<boolean>>;
2450
+ replySettings: z.ZodMiniOptional<z.ZodMiniEnum<{
2451
+ following: "following";
2452
+ mentionedUsers: "mentionedUsers";
2453
+ subscribers: "subscribers";
2454
+ verified: "verified";
2455
+ }>>;
2456
+ quoteTweetId: z.ZodMiniOptional<z.ZodMiniString<string>>;
2457
+ replyToTweetId: z.ZodMiniOptional<z.ZodMiniString<string>>;
2458
+ poll: z.ZodMiniOptional<z.ZodMiniObject<{
2459
+ options: z.ZodMiniArray<z.ZodMiniString<string>>;
2460
+ durationMinutes: z.ZodMiniNumberFormat;
2461
+ }, z.z.core.$strip>>;
2462
+ }, z.z.core.$strip>, z.ZodMiniObject<{
2463
+ visibility: z.ZodMiniOptional<z.ZodMiniEnum<{
2464
+ CONNECTIONS: "CONNECTIONS";
2465
+ PUBLIC: "PUBLIC";
2466
+ }>>;
2467
+ }, z.z.core.$strip>, z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniNever>, z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniUnknown>]>, z.ZodMiniUnknown>>;
2468
+ }, z.z.core.$strip>;
2469
+ /**
2470
+ * Create a post across one or more connected social accounts.
2471
+ */
2472
+ declare const zCreatePostRequest: z.ZodMiniObject<{
2473
+ content: z.ZodMiniDefault<z.ZodMiniOptional<z.ZodMiniString<string>>>;
2474
+ mediaIds: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniUUID>>;
2475
+ thumbnailTimestamp: z.ZodMiniOptional<z.ZodMiniNumberFormat>;
2476
+ accounts: z.ZodMiniArray<z.ZodMiniObject<{
2477
+ accountId: z.ZodMiniUUID;
2478
+ postOverrides: z.ZodMiniOptional<z.ZodMiniIntersection<z.ZodMiniObject<{
2479
+ content: z.ZodMiniOptional<z.ZodMiniString<string>>;
2480
+ thumbnailTimestamp: z.ZodMiniOptional<z.ZodMiniNumberFormat>;
2481
+ mediaIds: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniUUID>>;
2482
+ }, z.z.core.$strip>, z.ZodMiniUnknown>>;
2483
+ platformSpecificSettings: z.ZodMiniOptional<z.ZodMiniIntersection<z.ZodMiniUnion<readonly [z.ZodMiniObject<{
2484
+ description: z.ZodMiniOptional<z.ZodMiniString<string>>;
2485
+ privacyStatus: z.ZodMiniOptional<z.ZodMiniEnum<{
2486
+ public: "public";
2487
+ unlisted: "unlisted";
2488
+ private: "private";
2489
+ }>>;
2490
+ madeForKids: z.ZodMiniOptional<z.ZodMiniBoolean<boolean>>;
2491
+ containsSyntheticMedia: z.ZodMiniOptional<z.ZodMiniBoolean<boolean>>;
2492
+ categoryId: z.ZodMiniOptional<z.ZodMiniEnum<{
2493
+ 1: "1";
2494
+ 2: "2";
2495
+ 10: "10";
2496
+ 15: "15";
2497
+ 17: "17";
2498
+ 19: "19";
2499
+ 20: "20";
2500
+ 22: "22";
2501
+ 23: "23";
2502
+ 24: "24";
2503
+ 25: "25";
2504
+ 26: "26";
2505
+ 27: "27";
2506
+ 28: "28";
2507
+ 29: "29";
2508
+ }>>;
2509
+ tags: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniString<string>>>;
2510
+ embeddable: z.ZodMiniOptional<z.ZodMiniBoolean<boolean>>;
2511
+ playlistId: z.ZodMiniOptional<z.ZodMiniString<string>>;
2512
+ }, z.z.core.$strip>, z.ZodMiniObject<{
2513
+ privacyLevel: z.ZodMiniEnum<{
2514
+ PUBLIC_TO_EVERYONE: "PUBLIC_TO_EVERYONE";
2515
+ FOLLOWER_OF_CREATOR: "FOLLOWER_OF_CREATOR";
2516
+ MUTUAL_FOLLOW_FRIENDS: "MUTUAL_FOLLOW_FRIENDS";
2517
+ SELF_ONLY: "SELF_ONLY";
2518
+ }>;
2519
+ disableComment: z.ZodMiniBoolean<boolean>;
2520
+ disableDuet: z.ZodMiniBoolean<boolean>;
2521
+ disableStitch: z.ZodMiniBoolean<boolean>;
2522
+ brandContentToggle: z.ZodMiniBoolean<boolean>;
2523
+ brandOrganicToggle: z.ZodMiniBoolean<boolean>;
2524
+ autoAddMusic: z.ZodMiniOptional<z.ZodMiniBoolean<boolean>>;
2525
+ videoMadeWithAi: z.ZodMiniOptional<z.ZodMiniBoolean<boolean>>;
2526
+ description: z.ZodMiniOptional<z.ZodMiniString<string>>;
2527
+ photoCoverIndex: z.ZodMiniOptional<z.ZodMiniNumberFormat>;
2528
+ }, z.z.core.$strip>, z.ZodMiniObject<{
2529
+ contentType: z.ZodMiniOptional<z.ZodMiniEnum<{
2530
+ story: "story";
2531
+ reels: "reels";
2532
+ }>>;
2533
+ shareToFeed: z.ZodMiniOptional<z.ZodMiniBoolean<boolean>>;
2534
+ trialParams: z.ZodMiniOptional<z.ZodMiniObject<{
2535
+ graduationStrategy: z.ZodMiniEnum<{
2536
+ MANUAL: "MANUAL";
2537
+ SS_PERFORMANCE: "SS_PERFORMANCE";
2538
+ }>;
2539
+ }, z.z.core.$strip>>;
2540
+ audioName: z.ZodMiniOptional<z.ZodMiniString<string>>;
2541
+ }, z.z.core.$strip>, z.ZodMiniObject<{
2542
+ contentType: z.ZodMiniOptional<z.ZodMiniEnum<{
2543
+ story: "story";
2544
+ }>>;
2545
+ }, z.z.core.$strip>, z.ZodMiniObject<{
2546
+ topicTag: z.ZodMiniOptional<z.ZodMiniString<string>>;
2547
+ }, z.z.core.$strip>, z.ZodMiniObject<{
2548
+ communityId: z.ZodMiniOptional<z.ZodMiniString<string>>;
2549
+ shareWithFollowers: z.ZodMiniOptional<z.ZodMiniBoolean<boolean>>;
2550
+ forSuperFollowersOnly: z.ZodMiniOptional<z.ZodMiniBoolean<boolean>>;
2551
+ replySettings: z.ZodMiniOptional<z.ZodMiniEnum<{
2552
+ following: "following";
2553
+ mentionedUsers: "mentionedUsers";
2554
+ subscribers: "subscribers";
2555
+ verified: "verified";
2556
+ }>>;
2557
+ quoteTweetId: z.ZodMiniOptional<z.ZodMiniString<string>>;
2558
+ replyToTweetId: z.ZodMiniOptional<z.ZodMiniString<string>>;
2559
+ poll: z.ZodMiniOptional<z.ZodMiniObject<{
2560
+ options: z.ZodMiniArray<z.ZodMiniString<string>>;
2561
+ durationMinutes: z.ZodMiniNumberFormat;
2562
+ }, z.z.core.$strip>>;
2563
+ }, z.z.core.$strip>, z.ZodMiniObject<{
2564
+ visibility: z.ZodMiniOptional<z.ZodMiniEnum<{
2565
+ CONNECTIONS: "CONNECTIONS";
2566
+ PUBLIC: "PUBLIC";
2567
+ }>>;
2568
+ }, z.z.core.$strip>, z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniNever>, z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniUnknown>]>, z.ZodMiniUnknown>>;
2569
+ }, z.z.core.$strip>>;
2570
+ scheduledAt: z.ZodMiniOptional<z.z.iso.ZodMiniISODateTime>;
2571
+ publishNow: z.ZodMiniOptional<z.ZodMiniBoolean<boolean>>;
2572
+ }, z.z.core.$strip>;
2573
+ /**
2574
+ * Update a draft or scheduled post. Published and publishing posts cannot be updated. Media behavior is explicit: omit mediaIds to keep existing media unchanged, provide mediaIds to replace all current media, or provide an empty mediaIds array to remove all media.
2575
+ */
2576
+ declare const zUpdatePostRequest: z.ZodMiniObject<{
2577
+ content: z.ZodMiniOptional<z.ZodMiniString<string>>;
2578
+ scheduledAt: z.ZodMiniOptional<z.z.iso.ZodMiniISODateTime>;
2579
+ mediaIds: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniUUID>>;
2580
+ thumbnailTimestamp: z.ZodMiniOptional<z.ZodMiniNumberFormat>;
2581
+ accounts: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniObject<{
2582
+ accountId: z.ZodMiniUUID;
2583
+ postOverrides: z.ZodMiniOptional<z.ZodMiniIntersection<z.ZodMiniObject<{
2584
+ content: z.ZodMiniOptional<z.ZodMiniString<string>>;
2585
+ thumbnailTimestamp: z.ZodMiniOptional<z.ZodMiniNumberFormat>;
2586
+ mediaIds: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniUUID>>;
2587
+ }, z.z.core.$strip>, z.ZodMiniUnknown>>;
2588
+ platformSpecificSettings: z.ZodMiniOptional<z.ZodMiniIntersection<z.ZodMiniUnion<readonly [z.ZodMiniObject<{
2589
+ description: z.ZodMiniOptional<z.ZodMiniString<string>>;
2590
+ privacyStatus: z.ZodMiniOptional<z.ZodMiniEnum<{
2591
+ public: "public";
2592
+ unlisted: "unlisted";
2593
+ private: "private";
2594
+ }>>;
2595
+ madeForKids: z.ZodMiniOptional<z.ZodMiniBoolean<boolean>>;
2596
+ containsSyntheticMedia: z.ZodMiniOptional<z.ZodMiniBoolean<boolean>>;
2597
+ categoryId: z.ZodMiniOptional<z.ZodMiniEnum<{
2598
+ 1: "1";
2599
+ 2: "2";
2600
+ 10: "10";
2601
+ 15: "15";
2602
+ 17: "17";
2603
+ 19: "19";
2604
+ 20: "20";
2605
+ 22: "22";
2606
+ 23: "23";
2607
+ 24: "24";
2608
+ 25: "25";
2609
+ 26: "26";
2610
+ 27: "27";
2611
+ 28: "28";
2612
+ 29: "29";
2613
+ }>>;
2614
+ tags: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniString<string>>>;
2615
+ embeddable: z.ZodMiniOptional<z.ZodMiniBoolean<boolean>>;
2616
+ playlistId: z.ZodMiniOptional<z.ZodMiniString<string>>;
2617
+ }, z.z.core.$strip>, z.ZodMiniObject<{
2618
+ privacyLevel: z.ZodMiniEnum<{
2619
+ PUBLIC_TO_EVERYONE: "PUBLIC_TO_EVERYONE";
2620
+ FOLLOWER_OF_CREATOR: "FOLLOWER_OF_CREATOR";
2621
+ MUTUAL_FOLLOW_FRIENDS: "MUTUAL_FOLLOW_FRIENDS";
2622
+ SELF_ONLY: "SELF_ONLY";
2623
+ }>;
2624
+ disableComment: z.ZodMiniBoolean<boolean>;
2625
+ disableDuet: z.ZodMiniBoolean<boolean>;
2626
+ disableStitch: z.ZodMiniBoolean<boolean>;
2627
+ brandContentToggle: z.ZodMiniBoolean<boolean>;
2628
+ brandOrganicToggle: z.ZodMiniBoolean<boolean>;
2629
+ autoAddMusic: z.ZodMiniOptional<z.ZodMiniBoolean<boolean>>;
2630
+ videoMadeWithAi: z.ZodMiniOptional<z.ZodMiniBoolean<boolean>>;
2631
+ description: z.ZodMiniOptional<z.ZodMiniString<string>>;
2632
+ photoCoverIndex: z.ZodMiniOptional<z.ZodMiniNumberFormat>;
2633
+ }, z.z.core.$strip>, z.ZodMiniObject<{
2634
+ contentType: z.ZodMiniOptional<z.ZodMiniEnum<{
2635
+ story: "story";
2636
+ reels: "reels";
2637
+ }>>;
2638
+ shareToFeed: z.ZodMiniOptional<z.ZodMiniBoolean<boolean>>;
2639
+ trialParams: z.ZodMiniOptional<z.ZodMiniObject<{
2640
+ graduationStrategy: z.ZodMiniEnum<{
2641
+ MANUAL: "MANUAL";
2642
+ SS_PERFORMANCE: "SS_PERFORMANCE";
2643
+ }>;
2644
+ }, z.z.core.$strip>>;
2645
+ audioName: z.ZodMiniOptional<z.ZodMiniString<string>>;
2646
+ }, z.z.core.$strip>, z.ZodMiniObject<{
2647
+ contentType: z.ZodMiniOptional<z.ZodMiniEnum<{
2648
+ story: "story";
2649
+ }>>;
2650
+ }, z.z.core.$strip>, z.ZodMiniObject<{
2651
+ topicTag: z.ZodMiniOptional<z.ZodMiniString<string>>;
2652
+ }, z.z.core.$strip>, z.ZodMiniObject<{
2653
+ communityId: z.ZodMiniOptional<z.ZodMiniString<string>>;
2654
+ shareWithFollowers: z.ZodMiniOptional<z.ZodMiniBoolean<boolean>>;
2655
+ forSuperFollowersOnly: z.ZodMiniOptional<z.ZodMiniBoolean<boolean>>;
2656
+ replySettings: z.ZodMiniOptional<z.ZodMiniEnum<{
2657
+ following: "following";
2658
+ mentionedUsers: "mentionedUsers";
2659
+ subscribers: "subscribers";
2660
+ verified: "verified";
2661
+ }>>;
2662
+ quoteTweetId: z.ZodMiniOptional<z.ZodMiniString<string>>;
2663
+ replyToTweetId: z.ZodMiniOptional<z.ZodMiniString<string>>;
2664
+ poll: z.ZodMiniOptional<z.ZodMiniObject<{
2665
+ options: z.ZodMiniArray<z.ZodMiniString<string>>;
2666
+ durationMinutes: z.ZodMiniNumberFormat;
2667
+ }, z.z.core.$strip>>;
2668
+ }, z.z.core.$strip>, z.ZodMiniObject<{
2669
+ visibility: z.ZodMiniOptional<z.ZodMiniEnum<{
2670
+ CONNECTIONS: "CONNECTIONS";
2671
+ PUBLIC: "PUBLIC";
2672
+ }>>;
2673
+ }, z.z.core.$strip>, z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniNever>, z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniUnknown>]>, z.ZodMiniUnknown>>;
2674
+ }, z.z.core.$strip>>>;
2675
+ publishNow: z.ZodMiniOptional<z.ZodMiniBoolean<boolean>>;
2676
+ }, z.z.core.$strip>;
2677
+ declare const zSuccessMessage: z.ZodMiniObject<{
2678
+ deleted: z.ZodMiniLiteral<true>;
2679
+ id: z.ZodMiniUUID;
2680
+ }, z.z.core.$strip>;
2681
+ declare const zAccount: z.ZodMiniObject<{
2682
+ id: z.ZodMiniUUID;
2683
+ platform: z.ZodMiniIntersection<z.ZodMiniEnum<{
2684
+ TWITTER: "TWITTER";
2685
+ INSTAGRAM: "INSTAGRAM";
2686
+ FACEBOOK: "FACEBOOK";
2687
+ LINKEDIN: "LINKEDIN";
2688
+ YOUTUBE: "YOUTUBE";
2689
+ TIKTOK: "TIKTOK";
2690
+ THREADS: "THREADS";
2691
+ BLUESKY: "BLUESKY";
2692
+ }>, z.ZodMiniUnknown>;
2693
+ platformName: z.ZodMiniOptional<z.ZodMiniNullable<z.ZodMiniString<string>>>;
2694
+ platformUsername: z.ZodMiniString<string>;
2695
+ platformUserId: z.ZodMiniString<string>;
2696
+ platformPicture: z.ZodMiniOptional<z.ZodMiniNullable<z.ZodMiniString<string>>>;
2697
+ workspaceId: z.ZodMiniOptional<z.ZodMiniNullable<z.ZodMiniUUID>>;
2698
+ }, z.z.core.$strip>;
2699
+ declare const zAccountsResponse: z.ZodMiniObject<{
2700
+ accounts: z.ZodMiniArray<z.ZodMiniObject<{
2701
+ id: z.ZodMiniUUID;
2702
+ platform: z.ZodMiniIntersection<z.ZodMiniEnum<{
2703
+ TWITTER: "TWITTER";
2704
+ INSTAGRAM: "INSTAGRAM";
2705
+ FACEBOOK: "FACEBOOK";
2706
+ LINKEDIN: "LINKEDIN";
2707
+ YOUTUBE: "YOUTUBE";
2708
+ TIKTOK: "TIKTOK";
2709
+ THREADS: "THREADS";
2710
+ BLUESKY: "BLUESKY";
2711
+ }>, z.ZodMiniUnknown>;
2712
+ platformName: z.ZodMiniOptional<z.ZodMiniNullable<z.ZodMiniString<string>>>;
2713
+ platformUsername: z.ZodMiniString<string>;
2714
+ platformUserId: z.ZodMiniString<string>;
2715
+ platformPicture: z.ZodMiniOptional<z.ZodMiniNullable<z.ZodMiniString<string>>>;
2716
+ workspaceId: z.ZodMiniOptional<z.ZodMiniNullable<z.ZodMiniUUID>>;
2717
+ }, z.z.core.$strip>>;
2718
+ }, z.z.core.$strip>;
2719
+ declare const zWorkspace: z.ZodMiniObject<{
2720
+ id: z.ZodMiniUUID;
2721
+ name: z.ZodMiniString<string>;
2722
+ description: z.ZodMiniOptional<z.ZodMiniNullable<z.ZodMiniString<string>>>;
2723
+ color: z.ZodMiniString<string>;
2724
+ accountCount: z.ZodMiniNumberFormat;
2725
+ createdAt: z.z.iso.ZodMiniISODateTime;
2726
+ }, z.z.core.$strip>;
2727
+ /**
2728
+ * Create a new workspace.
2729
+ */
2730
+ declare const zCreateWorkspaceRequest: z.ZodMiniObject<{
2731
+ name: z.ZodMiniString<string>;
2732
+ description: z.ZodMiniOptional<z.ZodMiniString<string>>;
2733
+ color: z.ZodMiniDefault<z.ZodMiniOptional<z.ZodMiniString<string>>>;
2734
+ }, z.z.core.$strip>;
2735
+ declare const zWorkspacesResponse: z.ZodMiniObject<{
2736
+ workspaces: z.ZodMiniArray<z.ZodMiniObject<{
2737
+ id: z.ZodMiniUUID;
2738
+ name: z.ZodMiniString<string>;
2739
+ description: z.ZodMiniOptional<z.ZodMiniNullable<z.ZodMiniString<string>>>;
2740
+ color: z.ZodMiniString<string>;
2741
+ accountCount: z.ZodMiniNumberFormat;
2742
+ createdAt: z.z.iso.ZodMiniISODateTime;
2743
+ }, z.z.core.$strip>>;
2744
+ }, z.z.core.$strip>;
2745
+ /**
2746
+ * Media file type.
2747
+ */
2748
+ declare const zMediaType: z.ZodMiniEnum<{
2749
+ IMAGE: "IMAGE";
2750
+ VIDEO: "VIDEO";
2751
+ }>;
2752
+ /**
2753
+ * How the media was created: uploaded by the user, generated inside PublishQ, or AI-generated inside PublishQ.
2754
+ */
2755
+ declare const zMediaSource: z.ZodMiniEnum<{
2756
+ UPLOAD: "UPLOAD";
2757
+ GENERATED: "GENERATED";
2758
+ AI_GENERATED: "AI_GENERATED";
2759
+ }>;
2760
+ declare const zMedia: z.ZodMiniObject<{
2761
+ id: z.ZodMiniUUID;
2762
+ type: z.ZodMiniEnum<{
2763
+ IMAGE: "IMAGE";
2764
+ VIDEO: "VIDEO";
2765
+ }>;
2766
+ url: z.ZodMiniURL;
2767
+ source: z.ZodMiniEnum<{
2768
+ UPLOAD: "UPLOAD";
2769
+ GENERATED: "GENERATED";
2770
+ AI_GENERATED: "AI_GENERATED";
2771
+ }>;
2772
+ created_at: z.z.iso.ZodMiniISODateTime;
2773
+ usageCount: z.ZodMiniNumberFormat;
2774
+ }, z.z.core.$strip>;
2775
+ declare const zMediaListResponse: z.ZodMiniObject<{
2776
+ media: z.ZodMiniArray<z.ZodMiniObject<{
2777
+ id: z.ZodMiniUUID;
2778
+ type: z.ZodMiniEnum<{
2779
+ IMAGE: "IMAGE";
2780
+ VIDEO: "VIDEO";
2781
+ }>;
2782
+ url: z.ZodMiniURL;
2783
+ source: z.ZodMiniEnum<{
2784
+ UPLOAD: "UPLOAD";
2785
+ GENERATED: "GENERATED";
2786
+ AI_GENERATED: "AI_GENERATED";
2787
+ }>;
2788
+ created_at: z.z.iso.ZodMiniISODateTime;
2789
+ usageCount: z.ZodMiniNumberFormat;
2790
+ }, z.z.core.$strip>>;
2791
+ pagination: z.ZodMiniObject<{
2792
+ page: z.ZodMiniNumberFormat;
2793
+ limit: z.ZodMiniNumberFormat;
2794
+ total: z.ZodMiniNumberFormat;
2795
+ totalPages: z.ZodMiniNumberFormat;
2796
+ hasNext: z.ZodMiniBoolean<boolean>;
2797
+ hasPrev: z.ZodMiniBoolean<boolean>;
2798
+ }, z.z.core.$strip>;
2799
+ }, z.z.core.$strip>;
2800
+ declare const zUploadMediaRequest: z.ZodMiniObject<{
2801
+ file: z.ZodMiniString<string>;
2802
+ }, z.z.core.$strip>;
2803
+ declare const zTikTokCreatorInfoResponse: z.ZodMiniObject<{
2804
+ privacyLevelOptions: z.ZodMiniArray<z.ZodMiniString<string>>;
2805
+ commentDisabled: z.ZodMiniBoolean<boolean>;
2806
+ duetDisabled: z.ZodMiniBoolean<boolean>;
2807
+ stitchDisabled: z.ZodMiniBoolean<boolean>;
2808
+ maxVideoPostDurationSec: z.ZodMiniNumber<number>;
2809
+ }, z.z.core.$strip>;
2810
+ declare const zApiKeyScope: z.ZodMiniEnum<{
2811
+ "posts:read": "posts:read";
2812
+ "posts:write": "posts:write";
2813
+ "accounts:read": "accounts:read";
2814
+ "workspaces:read": "workspaces:read";
2815
+ "workspaces:write": "workspaces:write";
2816
+ "media:read": "media:read";
2817
+ "media:write": "media:write";
2818
+ }>;
2819
+ declare const zListPostsQuery: z.ZodMiniObject<{
2820
+ page: z.ZodMiniDefault<z.ZodMiniOptional<z.ZodMiniNumberFormat>>;
2821
+ limit: z.ZodMiniDefault<z.ZodMiniOptional<z.ZodMiniNumberFormat>>;
2822
+ }, z.z.core.$strip>;
2823
+ /**
2824
+ * Posts retrieved successfully
2825
+ */
2826
+ declare const zListPostsResponse: z.ZodMiniObject<{
2827
+ posts: z.ZodMiniArray<z.ZodMiniObject<{
2828
+ id: z.ZodMiniUUID;
2829
+ content: z.ZodMiniString<string>;
2830
+ status: z.ZodMiniEnum<{
2831
+ DRAFT: "DRAFT";
2832
+ SCHEDULED: "SCHEDULED";
2833
+ PUBLISHING: "PUBLISHING";
2834
+ PUBLISHED: "PUBLISHED";
2835
+ FAILED: "FAILED";
2836
+ }>;
2837
+ errorMessage: z.ZodMiniOptional<z.ZodMiniString<string>>;
2838
+ mediaIds: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniUUID>>;
2839
+ deletedMediaCount: z.ZodMiniOptional<z.ZodMiniNumberFormat>;
2840
+ scheduledAt: z.ZodMiniOptional<z.z.iso.ZodMiniISODateTime>;
2841
+ publishedAt: z.ZodMiniOptional<z.z.iso.ZodMiniISODateTime>;
2842
+ createdAt: z.z.iso.ZodMiniISODateTime;
2843
+ accounts: z.ZodMiniArray<z.ZodMiniObject<{
2844
+ accountId: z.ZodMiniUUID;
2845
+ platform: z.ZodMiniEnum<{
2846
+ TWITTER: "TWITTER";
2847
+ INSTAGRAM: "INSTAGRAM";
2848
+ FACEBOOK: "FACEBOOK";
2849
+ LINKEDIN: "LINKEDIN";
2850
+ YOUTUBE: "YOUTUBE";
2851
+ TIKTOK: "TIKTOK";
2852
+ THREADS: "THREADS";
2853
+ BLUESKY: "BLUESKY";
2854
+ }>;
2855
+ accountName: z.ZodMiniString<string>;
2856
+ status: z.ZodMiniEnum<{
2857
+ DRAFT: "DRAFT";
2858
+ SCHEDULED: "SCHEDULED";
2859
+ PUBLISHING: "PUBLISHING";
2860
+ PUBLISHED: "PUBLISHED";
2861
+ FAILED: "FAILED";
2862
+ }>;
2863
+ externalUrl: z.ZodMiniOptional<z.ZodMiniURL>;
2864
+ publishedAt: z.ZodMiniOptional<z.z.iso.ZodMiniISODateTime>;
2865
+ errorMessage: z.ZodMiniOptional<z.ZodMiniString<string>>;
2866
+ postOverrides: z.ZodMiniOptional<z.ZodMiniObject<{
2867
+ content: z.ZodMiniOptional<z.ZodMiniString<string>>;
2868
+ thumbnailTimestamp: z.ZodMiniOptional<z.ZodMiniNumberFormat>;
2869
+ mediaIds: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniUUID>>;
2870
+ }, z.z.core.$strip>>;
2871
+ platformSpecificSettings: z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniObject<{
2872
+ description: z.ZodMiniOptional<z.ZodMiniString<string>>;
2873
+ privacyStatus: z.ZodMiniOptional<z.ZodMiniEnum<{
2874
+ public: "public";
2875
+ unlisted: "unlisted";
2876
+ private: "private";
2877
+ }>>;
2878
+ madeForKids: z.ZodMiniOptional<z.ZodMiniBoolean<boolean>>;
2879
+ containsSyntheticMedia: z.ZodMiniOptional<z.ZodMiniBoolean<boolean>>;
2880
+ categoryId: z.ZodMiniOptional<z.ZodMiniEnum<{
2881
+ 1: "1";
2882
+ 2: "2";
2883
+ 10: "10";
2884
+ 15: "15";
2885
+ 17: "17";
2886
+ 19: "19";
2887
+ 20: "20";
2888
+ 22: "22";
2889
+ 23: "23";
2890
+ 24: "24";
2891
+ 25: "25";
2892
+ 26: "26";
2893
+ 27: "27";
2894
+ 28: "28";
2895
+ 29: "29";
2896
+ }>>;
2897
+ tags: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniString<string>>>;
2898
+ embeddable: z.ZodMiniOptional<z.ZodMiniBoolean<boolean>>;
2899
+ playlistId: z.ZodMiniOptional<z.ZodMiniString<string>>;
2900
+ }, z.z.core.$strip>, z.ZodMiniObject<{
2901
+ privacyLevel: z.ZodMiniEnum<{
2902
+ PUBLIC_TO_EVERYONE: "PUBLIC_TO_EVERYONE";
2903
+ FOLLOWER_OF_CREATOR: "FOLLOWER_OF_CREATOR";
2904
+ MUTUAL_FOLLOW_FRIENDS: "MUTUAL_FOLLOW_FRIENDS";
2905
+ SELF_ONLY: "SELF_ONLY";
2906
+ }>;
2907
+ disableComment: z.ZodMiniBoolean<boolean>;
2908
+ disableDuet: z.ZodMiniBoolean<boolean>;
2909
+ disableStitch: z.ZodMiniBoolean<boolean>;
2910
+ brandContentToggle: z.ZodMiniBoolean<boolean>;
2911
+ brandOrganicToggle: z.ZodMiniBoolean<boolean>;
2912
+ autoAddMusic: z.ZodMiniOptional<z.ZodMiniBoolean<boolean>>;
2913
+ videoMadeWithAi: z.ZodMiniOptional<z.ZodMiniBoolean<boolean>>;
2914
+ description: z.ZodMiniOptional<z.ZodMiniString<string>>;
2915
+ photoCoverIndex: z.ZodMiniOptional<z.ZodMiniNumberFormat>;
2916
+ }, z.z.core.$strip>, z.ZodMiniObject<{
2917
+ contentType: z.ZodMiniOptional<z.ZodMiniEnum<{
2918
+ story: "story";
2919
+ reels: "reels";
2920
+ }>>;
2921
+ shareToFeed: z.ZodMiniOptional<z.ZodMiniBoolean<boolean>>;
2922
+ trialParams: z.ZodMiniOptional<z.ZodMiniObject<{
2923
+ graduationStrategy: z.ZodMiniEnum<{
2924
+ MANUAL: "MANUAL";
2925
+ SS_PERFORMANCE: "SS_PERFORMANCE";
2926
+ }>;
2927
+ }, z.z.core.$strip>>;
2928
+ audioName: z.ZodMiniOptional<z.ZodMiniString<string>>;
2929
+ }, z.z.core.$strip>, z.ZodMiniObject<{
2930
+ contentType: z.ZodMiniOptional<z.ZodMiniEnum<{
2931
+ story: "story";
2932
+ }>>;
2933
+ }, z.z.core.$strip>, z.ZodMiniObject<{
2934
+ topicTag: z.ZodMiniOptional<z.ZodMiniString<string>>;
2935
+ }, z.z.core.$strip>, z.ZodMiniObject<{
2936
+ communityId: z.ZodMiniOptional<z.ZodMiniString<string>>;
2937
+ shareWithFollowers: z.ZodMiniOptional<z.ZodMiniBoolean<boolean>>;
2938
+ forSuperFollowersOnly: z.ZodMiniOptional<z.ZodMiniBoolean<boolean>>;
2939
+ replySettings: z.ZodMiniOptional<z.ZodMiniEnum<{
2940
+ following: "following";
2941
+ mentionedUsers: "mentionedUsers";
2942
+ subscribers: "subscribers";
2943
+ verified: "verified";
2944
+ }>>;
2945
+ quoteTweetId: z.ZodMiniOptional<z.ZodMiniString<string>>;
2946
+ replyToTweetId: z.ZodMiniOptional<z.ZodMiniString<string>>;
2947
+ poll: z.ZodMiniOptional<z.ZodMiniObject<{
2948
+ options: z.ZodMiniArray<z.ZodMiniString<string>>;
2949
+ durationMinutes: z.ZodMiniNumberFormat;
2950
+ }, z.z.core.$strip>>;
2951
+ }, z.z.core.$strip>, z.ZodMiniObject<{
2952
+ visibility: z.ZodMiniOptional<z.ZodMiniEnum<{
2953
+ CONNECTIONS: "CONNECTIONS";
2954
+ PUBLIC: "PUBLIC";
2955
+ }>>;
2956
+ }, z.z.core.$strip>, z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniNever>, z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniUnknown>]>>;
2957
+ }, z.z.core.$strip>>;
2958
+ }, z.z.core.$strip>>;
2959
+ pagination: z.ZodMiniObject<{
2960
+ page: z.ZodMiniNumberFormat;
2961
+ limit: z.ZodMiniNumberFormat;
2962
+ total: z.ZodMiniNumberFormat;
2963
+ totalPages: z.ZodMiniNumberFormat;
2964
+ hasNext: z.ZodMiniBoolean<boolean>;
2965
+ hasPrev: z.ZodMiniBoolean<boolean>;
2966
+ }, z.z.core.$strip>;
2967
+ }, z.z.core.$strip>;
2968
+ declare const zCreatePostBody: z.ZodMiniObject<{
2969
+ content: z.ZodMiniDefault<z.ZodMiniOptional<z.ZodMiniString<string>>>;
2970
+ mediaIds: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniUUID>>;
2971
+ thumbnailTimestamp: z.ZodMiniOptional<z.ZodMiniNumberFormat>;
2972
+ accounts: z.ZodMiniArray<z.ZodMiniObject<{
2973
+ accountId: z.ZodMiniUUID;
2974
+ postOverrides: z.ZodMiniOptional<z.ZodMiniIntersection<z.ZodMiniObject<{
2975
+ content: z.ZodMiniOptional<z.ZodMiniString<string>>;
2976
+ thumbnailTimestamp: z.ZodMiniOptional<z.ZodMiniNumberFormat>;
2977
+ mediaIds: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniUUID>>;
2978
+ }, z.z.core.$strip>, z.ZodMiniUnknown>>;
2979
+ platformSpecificSettings: z.ZodMiniOptional<z.ZodMiniIntersection<z.ZodMiniUnion<readonly [z.ZodMiniObject<{
2980
+ description: z.ZodMiniOptional<z.ZodMiniString<string>>;
2981
+ privacyStatus: z.ZodMiniOptional<z.ZodMiniEnum<{
2982
+ public: "public";
2983
+ unlisted: "unlisted";
2984
+ private: "private";
2985
+ }>>;
2986
+ madeForKids: z.ZodMiniOptional<z.ZodMiniBoolean<boolean>>;
2987
+ containsSyntheticMedia: z.ZodMiniOptional<z.ZodMiniBoolean<boolean>>;
2988
+ categoryId: z.ZodMiniOptional<z.ZodMiniEnum<{
2989
+ 1: "1";
2990
+ 2: "2";
2991
+ 10: "10";
2992
+ 15: "15";
2993
+ 17: "17";
2994
+ 19: "19";
2995
+ 20: "20";
2996
+ 22: "22";
2997
+ 23: "23";
2998
+ 24: "24";
2999
+ 25: "25";
3000
+ 26: "26";
3001
+ 27: "27";
3002
+ 28: "28";
3003
+ 29: "29";
3004
+ }>>;
3005
+ tags: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniString<string>>>;
3006
+ embeddable: z.ZodMiniOptional<z.ZodMiniBoolean<boolean>>;
3007
+ playlistId: z.ZodMiniOptional<z.ZodMiniString<string>>;
3008
+ }, z.z.core.$strip>, z.ZodMiniObject<{
3009
+ privacyLevel: z.ZodMiniEnum<{
3010
+ PUBLIC_TO_EVERYONE: "PUBLIC_TO_EVERYONE";
3011
+ FOLLOWER_OF_CREATOR: "FOLLOWER_OF_CREATOR";
3012
+ MUTUAL_FOLLOW_FRIENDS: "MUTUAL_FOLLOW_FRIENDS";
3013
+ SELF_ONLY: "SELF_ONLY";
3014
+ }>;
3015
+ disableComment: z.ZodMiniBoolean<boolean>;
3016
+ disableDuet: z.ZodMiniBoolean<boolean>;
3017
+ disableStitch: z.ZodMiniBoolean<boolean>;
3018
+ brandContentToggle: z.ZodMiniBoolean<boolean>;
3019
+ brandOrganicToggle: z.ZodMiniBoolean<boolean>;
3020
+ autoAddMusic: z.ZodMiniOptional<z.ZodMiniBoolean<boolean>>;
3021
+ videoMadeWithAi: z.ZodMiniOptional<z.ZodMiniBoolean<boolean>>;
3022
+ description: z.ZodMiniOptional<z.ZodMiniString<string>>;
3023
+ photoCoverIndex: z.ZodMiniOptional<z.ZodMiniNumberFormat>;
3024
+ }, z.z.core.$strip>, z.ZodMiniObject<{
3025
+ contentType: z.ZodMiniOptional<z.ZodMiniEnum<{
3026
+ story: "story";
3027
+ reels: "reels";
3028
+ }>>;
3029
+ shareToFeed: z.ZodMiniOptional<z.ZodMiniBoolean<boolean>>;
3030
+ trialParams: z.ZodMiniOptional<z.ZodMiniObject<{
3031
+ graduationStrategy: z.ZodMiniEnum<{
3032
+ MANUAL: "MANUAL";
3033
+ SS_PERFORMANCE: "SS_PERFORMANCE";
3034
+ }>;
3035
+ }, z.z.core.$strip>>;
3036
+ audioName: z.ZodMiniOptional<z.ZodMiniString<string>>;
3037
+ }, z.z.core.$strip>, z.ZodMiniObject<{
3038
+ contentType: z.ZodMiniOptional<z.ZodMiniEnum<{
3039
+ story: "story";
3040
+ }>>;
3041
+ }, z.z.core.$strip>, z.ZodMiniObject<{
3042
+ topicTag: z.ZodMiniOptional<z.ZodMiniString<string>>;
3043
+ }, z.z.core.$strip>, z.ZodMiniObject<{
3044
+ communityId: z.ZodMiniOptional<z.ZodMiniString<string>>;
3045
+ shareWithFollowers: z.ZodMiniOptional<z.ZodMiniBoolean<boolean>>;
3046
+ forSuperFollowersOnly: z.ZodMiniOptional<z.ZodMiniBoolean<boolean>>;
3047
+ replySettings: z.ZodMiniOptional<z.ZodMiniEnum<{
3048
+ following: "following";
3049
+ mentionedUsers: "mentionedUsers";
3050
+ subscribers: "subscribers";
3051
+ verified: "verified";
3052
+ }>>;
3053
+ quoteTweetId: z.ZodMiniOptional<z.ZodMiniString<string>>;
3054
+ replyToTweetId: z.ZodMiniOptional<z.ZodMiniString<string>>;
3055
+ poll: z.ZodMiniOptional<z.ZodMiniObject<{
3056
+ options: z.ZodMiniArray<z.ZodMiniString<string>>;
3057
+ durationMinutes: z.ZodMiniNumberFormat;
3058
+ }, z.z.core.$strip>>;
3059
+ }, z.z.core.$strip>, z.ZodMiniObject<{
3060
+ visibility: z.ZodMiniOptional<z.ZodMiniEnum<{
3061
+ CONNECTIONS: "CONNECTIONS";
3062
+ PUBLIC: "PUBLIC";
3063
+ }>>;
3064
+ }, z.z.core.$strip>, z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniNever>, z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniUnknown>]>, z.ZodMiniUnknown>>;
3065
+ }, z.z.core.$strip>>;
3066
+ scheduledAt: z.ZodMiniOptional<z.z.iso.ZodMiniISODateTime>;
3067
+ publishNow: z.ZodMiniOptional<z.ZodMiniBoolean<boolean>>;
3068
+ }, z.z.core.$strip>;
3069
+ /**
3070
+ * Posts created successfully
3071
+ */
3072
+ declare const zCreatePostResponse: z.ZodMiniObject<{
3073
+ id: z.ZodMiniUUID;
3074
+ content: z.ZodMiniString<string>;
3075
+ status: z.ZodMiniEnum<{
3076
+ DRAFT: "DRAFT";
3077
+ SCHEDULED: "SCHEDULED";
3078
+ PUBLISHING: "PUBLISHING";
3079
+ PUBLISHED: "PUBLISHED";
3080
+ FAILED: "FAILED";
3081
+ }>;
3082
+ errorMessage: z.ZodMiniOptional<z.ZodMiniString<string>>;
3083
+ mediaIds: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniUUID>>;
3084
+ deletedMediaCount: z.ZodMiniOptional<z.ZodMiniNumberFormat>;
3085
+ scheduledAt: z.ZodMiniOptional<z.z.iso.ZodMiniISODateTime>;
3086
+ publishedAt: z.ZodMiniOptional<z.z.iso.ZodMiniISODateTime>;
3087
+ createdAt: z.z.iso.ZodMiniISODateTime;
3088
+ accounts: z.ZodMiniArray<z.ZodMiniObject<{
3089
+ accountId: z.ZodMiniUUID;
3090
+ platform: z.ZodMiniEnum<{
3091
+ TWITTER: "TWITTER";
3092
+ INSTAGRAM: "INSTAGRAM";
3093
+ FACEBOOK: "FACEBOOK";
3094
+ LINKEDIN: "LINKEDIN";
3095
+ YOUTUBE: "YOUTUBE";
3096
+ TIKTOK: "TIKTOK";
3097
+ THREADS: "THREADS";
3098
+ BLUESKY: "BLUESKY";
3099
+ }>;
3100
+ accountName: z.ZodMiniString<string>;
3101
+ status: z.ZodMiniEnum<{
3102
+ DRAFT: "DRAFT";
3103
+ SCHEDULED: "SCHEDULED";
3104
+ PUBLISHING: "PUBLISHING";
3105
+ PUBLISHED: "PUBLISHED";
3106
+ FAILED: "FAILED";
3107
+ }>;
3108
+ externalUrl: z.ZodMiniOptional<z.ZodMiniURL>;
3109
+ publishedAt: z.ZodMiniOptional<z.z.iso.ZodMiniISODateTime>;
3110
+ errorMessage: z.ZodMiniOptional<z.ZodMiniString<string>>;
3111
+ postOverrides: z.ZodMiniOptional<z.ZodMiniObject<{
3112
+ content: z.ZodMiniOptional<z.ZodMiniString<string>>;
3113
+ thumbnailTimestamp: z.ZodMiniOptional<z.ZodMiniNumberFormat>;
3114
+ mediaIds: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniUUID>>;
3115
+ }, z.z.core.$strip>>;
3116
+ platformSpecificSettings: z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniObject<{
3117
+ description: z.ZodMiniOptional<z.ZodMiniString<string>>;
3118
+ privacyStatus: z.ZodMiniOptional<z.ZodMiniEnum<{
3119
+ public: "public";
3120
+ unlisted: "unlisted";
3121
+ private: "private";
3122
+ }>>;
3123
+ madeForKids: z.ZodMiniOptional<z.ZodMiniBoolean<boolean>>;
3124
+ containsSyntheticMedia: z.ZodMiniOptional<z.ZodMiniBoolean<boolean>>;
3125
+ categoryId: z.ZodMiniOptional<z.ZodMiniEnum<{
3126
+ 1: "1";
3127
+ 2: "2";
3128
+ 10: "10";
3129
+ 15: "15";
3130
+ 17: "17";
3131
+ 19: "19";
3132
+ 20: "20";
3133
+ 22: "22";
3134
+ 23: "23";
3135
+ 24: "24";
3136
+ 25: "25";
3137
+ 26: "26";
3138
+ 27: "27";
3139
+ 28: "28";
3140
+ 29: "29";
3141
+ }>>;
3142
+ tags: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniString<string>>>;
3143
+ embeddable: z.ZodMiniOptional<z.ZodMiniBoolean<boolean>>;
3144
+ playlistId: z.ZodMiniOptional<z.ZodMiniString<string>>;
3145
+ }, z.z.core.$strip>, z.ZodMiniObject<{
3146
+ privacyLevel: z.ZodMiniEnum<{
3147
+ PUBLIC_TO_EVERYONE: "PUBLIC_TO_EVERYONE";
3148
+ FOLLOWER_OF_CREATOR: "FOLLOWER_OF_CREATOR";
3149
+ MUTUAL_FOLLOW_FRIENDS: "MUTUAL_FOLLOW_FRIENDS";
3150
+ SELF_ONLY: "SELF_ONLY";
3151
+ }>;
3152
+ disableComment: z.ZodMiniBoolean<boolean>;
3153
+ disableDuet: z.ZodMiniBoolean<boolean>;
3154
+ disableStitch: z.ZodMiniBoolean<boolean>;
3155
+ brandContentToggle: z.ZodMiniBoolean<boolean>;
3156
+ brandOrganicToggle: z.ZodMiniBoolean<boolean>;
3157
+ autoAddMusic: z.ZodMiniOptional<z.ZodMiniBoolean<boolean>>;
3158
+ videoMadeWithAi: z.ZodMiniOptional<z.ZodMiniBoolean<boolean>>;
3159
+ description: z.ZodMiniOptional<z.ZodMiniString<string>>;
3160
+ photoCoverIndex: z.ZodMiniOptional<z.ZodMiniNumberFormat>;
3161
+ }, z.z.core.$strip>, z.ZodMiniObject<{
3162
+ contentType: z.ZodMiniOptional<z.ZodMiniEnum<{
3163
+ story: "story";
3164
+ reels: "reels";
3165
+ }>>;
3166
+ shareToFeed: z.ZodMiniOptional<z.ZodMiniBoolean<boolean>>;
3167
+ trialParams: z.ZodMiniOptional<z.ZodMiniObject<{
3168
+ graduationStrategy: z.ZodMiniEnum<{
3169
+ MANUAL: "MANUAL";
3170
+ SS_PERFORMANCE: "SS_PERFORMANCE";
3171
+ }>;
3172
+ }, z.z.core.$strip>>;
3173
+ audioName: z.ZodMiniOptional<z.ZodMiniString<string>>;
3174
+ }, z.z.core.$strip>, z.ZodMiniObject<{
3175
+ contentType: z.ZodMiniOptional<z.ZodMiniEnum<{
3176
+ story: "story";
3177
+ }>>;
3178
+ }, z.z.core.$strip>, z.ZodMiniObject<{
3179
+ topicTag: z.ZodMiniOptional<z.ZodMiniString<string>>;
3180
+ }, z.z.core.$strip>, z.ZodMiniObject<{
3181
+ communityId: z.ZodMiniOptional<z.ZodMiniString<string>>;
3182
+ shareWithFollowers: z.ZodMiniOptional<z.ZodMiniBoolean<boolean>>;
3183
+ forSuperFollowersOnly: z.ZodMiniOptional<z.ZodMiniBoolean<boolean>>;
3184
+ replySettings: z.ZodMiniOptional<z.ZodMiniEnum<{
3185
+ following: "following";
3186
+ mentionedUsers: "mentionedUsers";
3187
+ subscribers: "subscribers";
3188
+ verified: "verified";
3189
+ }>>;
3190
+ quoteTweetId: z.ZodMiniOptional<z.ZodMiniString<string>>;
3191
+ replyToTweetId: z.ZodMiniOptional<z.ZodMiniString<string>>;
3192
+ poll: z.ZodMiniOptional<z.ZodMiniObject<{
3193
+ options: z.ZodMiniArray<z.ZodMiniString<string>>;
3194
+ durationMinutes: z.ZodMiniNumberFormat;
3195
+ }, z.z.core.$strip>>;
3196
+ }, z.z.core.$strip>, z.ZodMiniObject<{
3197
+ visibility: z.ZodMiniOptional<z.ZodMiniEnum<{
3198
+ CONNECTIONS: "CONNECTIONS";
3199
+ PUBLIC: "PUBLIC";
3200
+ }>>;
3201
+ }, z.z.core.$strip>, z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniNever>, z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniUnknown>]>>;
3202
+ }, z.z.core.$strip>>;
3203
+ }, z.z.core.$strip>;
3204
+ declare const zDeletePostPath: z.ZodMiniObject<{
3205
+ id: z.ZodMiniUUID;
3206
+ }, z.z.core.$strip>;
3207
+ /**
3208
+ * Post deleted successfully
3209
+ */
3210
+ declare const zDeletePostResponse: z.ZodMiniVoid;
3211
+ declare const zGetPostPath: z.ZodMiniObject<{
3212
+ id: z.ZodMiniUUID;
3213
+ }, z.z.core.$strip>;
3214
+ /**
3215
+ * Post retrieved successfully
3216
+ */
3217
+ declare const zGetPostResponse: z.ZodMiniObject<{
3218
+ id: z.ZodMiniUUID;
3219
+ content: z.ZodMiniString<string>;
3220
+ status: z.ZodMiniEnum<{
3221
+ DRAFT: "DRAFT";
3222
+ SCHEDULED: "SCHEDULED";
3223
+ PUBLISHING: "PUBLISHING";
3224
+ PUBLISHED: "PUBLISHED";
3225
+ FAILED: "FAILED";
3226
+ }>;
3227
+ errorMessage: z.ZodMiniOptional<z.ZodMiniString<string>>;
3228
+ mediaIds: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniUUID>>;
3229
+ deletedMediaCount: z.ZodMiniOptional<z.ZodMiniNumberFormat>;
3230
+ scheduledAt: z.ZodMiniOptional<z.z.iso.ZodMiniISODateTime>;
3231
+ publishedAt: z.ZodMiniOptional<z.z.iso.ZodMiniISODateTime>;
3232
+ createdAt: z.z.iso.ZodMiniISODateTime;
3233
+ accounts: z.ZodMiniArray<z.ZodMiniObject<{
3234
+ accountId: z.ZodMiniUUID;
3235
+ platform: z.ZodMiniEnum<{
3236
+ TWITTER: "TWITTER";
3237
+ INSTAGRAM: "INSTAGRAM";
3238
+ FACEBOOK: "FACEBOOK";
3239
+ LINKEDIN: "LINKEDIN";
3240
+ YOUTUBE: "YOUTUBE";
3241
+ TIKTOK: "TIKTOK";
3242
+ THREADS: "THREADS";
3243
+ BLUESKY: "BLUESKY";
3244
+ }>;
3245
+ accountName: z.ZodMiniString<string>;
3246
+ status: z.ZodMiniEnum<{
3247
+ DRAFT: "DRAFT";
3248
+ SCHEDULED: "SCHEDULED";
3249
+ PUBLISHING: "PUBLISHING";
3250
+ PUBLISHED: "PUBLISHED";
3251
+ FAILED: "FAILED";
3252
+ }>;
3253
+ externalUrl: z.ZodMiniOptional<z.ZodMiniURL>;
3254
+ publishedAt: z.ZodMiniOptional<z.z.iso.ZodMiniISODateTime>;
3255
+ errorMessage: z.ZodMiniOptional<z.ZodMiniString<string>>;
3256
+ postOverrides: z.ZodMiniOptional<z.ZodMiniObject<{
3257
+ content: z.ZodMiniOptional<z.ZodMiniString<string>>;
3258
+ thumbnailTimestamp: z.ZodMiniOptional<z.ZodMiniNumberFormat>;
3259
+ mediaIds: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniUUID>>;
3260
+ }, z.z.core.$strip>>;
3261
+ platformSpecificSettings: z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniObject<{
3262
+ description: z.ZodMiniOptional<z.ZodMiniString<string>>;
3263
+ privacyStatus: z.ZodMiniOptional<z.ZodMiniEnum<{
3264
+ public: "public";
3265
+ unlisted: "unlisted";
3266
+ private: "private";
3267
+ }>>;
3268
+ madeForKids: z.ZodMiniOptional<z.ZodMiniBoolean<boolean>>;
3269
+ containsSyntheticMedia: z.ZodMiniOptional<z.ZodMiniBoolean<boolean>>;
3270
+ categoryId: z.ZodMiniOptional<z.ZodMiniEnum<{
3271
+ 1: "1";
3272
+ 2: "2";
3273
+ 10: "10";
3274
+ 15: "15";
3275
+ 17: "17";
3276
+ 19: "19";
3277
+ 20: "20";
3278
+ 22: "22";
3279
+ 23: "23";
3280
+ 24: "24";
3281
+ 25: "25";
3282
+ 26: "26";
3283
+ 27: "27";
3284
+ 28: "28";
3285
+ 29: "29";
3286
+ }>>;
3287
+ tags: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniString<string>>>;
3288
+ embeddable: z.ZodMiniOptional<z.ZodMiniBoolean<boolean>>;
3289
+ playlistId: z.ZodMiniOptional<z.ZodMiniString<string>>;
3290
+ }, z.z.core.$strip>, z.ZodMiniObject<{
3291
+ privacyLevel: z.ZodMiniEnum<{
3292
+ PUBLIC_TO_EVERYONE: "PUBLIC_TO_EVERYONE";
3293
+ FOLLOWER_OF_CREATOR: "FOLLOWER_OF_CREATOR";
3294
+ MUTUAL_FOLLOW_FRIENDS: "MUTUAL_FOLLOW_FRIENDS";
3295
+ SELF_ONLY: "SELF_ONLY";
3296
+ }>;
3297
+ disableComment: z.ZodMiniBoolean<boolean>;
3298
+ disableDuet: z.ZodMiniBoolean<boolean>;
3299
+ disableStitch: z.ZodMiniBoolean<boolean>;
3300
+ brandContentToggle: z.ZodMiniBoolean<boolean>;
3301
+ brandOrganicToggle: z.ZodMiniBoolean<boolean>;
3302
+ autoAddMusic: z.ZodMiniOptional<z.ZodMiniBoolean<boolean>>;
3303
+ videoMadeWithAi: z.ZodMiniOptional<z.ZodMiniBoolean<boolean>>;
3304
+ description: z.ZodMiniOptional<z.ZodMiniString<string>>;
3305
+ photoCoverIndex: z.ZodMiniOptional<z.ZodMiniNumberFormat>;
3306
+ }, z.z.core.$strip>, z.ZodMiniObject<{
3307
+ contentType: z.ZodMiniOptional<z.ZodMiniEnum<{
3308
+ story: "story";
3309
+ reels: "reels";
3310
+ }>>;
3311
+ shareToFeed: z.ZodMiniOptional<z.ZodMiniBoolean<boolean>>;
3312
+ trialParams: z.ZodMiniOptional<z.ZodMiniObject<{
3313
+ graduationStrategy: z.ZodMiniEnum<{
3314
+ MANUAL: "MANUAL";
3315
+ SS_PERFORMANCE: "SS_PERFORMANCE";
3316
+ }>;
3317
+ }, z.z.core.$strip>>;
3318
+ audioName: z.ZodMiniOptional<z.ZodMiniString<string>>;
3319
+ }, z.z.core.$strip>, z.ZodMiniObject<{
3320
+ contentType: z.ZodMiniOptional<z.ZodMiniEnum<{
3321
+ story: "story";
3322
+ }>>;
3323
+ }, z.z.core.$strip>, z.ZodMiniObject<{
3324
+ topicTag: z.ZodMiniOptional<z.ZodMiniString<string>>;
3325
+ }, z.z.core.$strip>, z.ZodMiniObject<{
3326
+ communityId: z.ZodMiniOptional<z.ZodMiniString<string>>;
3327
+ shareWithFollowers: z.ZodMiniOptional<z.ZodMiniBoolean<boolean>>;
3328
+ forSuperFollowersOnly: z.ZodMiniOptional<z.ZodMiniBoolean<boolean>>;
3329
+ replySettings: z.ZodMiniOptional<z.ZodMiniEnum<{
3330
+ following: "following";
3331
+ mentionedUsers: "mentionedUsers";
3332
+ subscribers: "subscribers";
3333
+ verified: "verified";
3334
+ }>>;
3335
+ quoteTweetId: z.ZodMiniOptional<z.ZodMiniString<string>>;
3336
+ replyToTweetId: z.ZodMiniOptional<z.ZodMiniString<string>>;
3337
+ poll: z.ZodMiniOptional<z.ZodMiniObject<{
3338
+ options: z.ZodMiniArray<z.ZodMiniString<string>>;
3339
+ durationMinutes: z.ZodMiniNumberFormat;
3340
+ }, z.z.core.$strip>>;
3341
+ }, z.z.core.$strip>, z.ZodMiniObject<{
3342
+ visibility: z.ZodMiniOptional<z.ZodMiniEnum<{
3343
+ CONNECTIONS: "CONNECTIONS";
3344
+ PUBLIC: "PUBLIC";
3345
+ }>>;
3346
+ }, z.z.core.$strip>, z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniNever>, z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniUnknown>]>>;
3347
+ }, z.z.core.$strip>>;
3348
+ }, z.z.core.$strip>;
3349
+ declare const zUpdatePostBody: z.ZodMiniObject<{
3350
+ content: z.ZodMiniOptional<z.ZodMiniString<string>>;
3351
+ scheduledAt: z.ZodMiniOptional<z.z.iso.ZodMiniISODateTime>;
3352
+ mediaIds: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniUUID>>;
3353
+ thumbnailTimestamp: z.ZodMiniOptional<z.ZodMiniNumberFormat>;
3354
+ accounts: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniObject<{
3355
+ accountId: z.ZodMiniUUID;
3356
+ postOverrides: z.ZodMiniOptional<z.ZodMiniIntersection<z.ZodMiniObject<{
3357
+ content: z.ZodMiniOptional<z.ZodMiniString<string>>;
3358
+ thumbnailTimestamp: z.ZodMiniOptional<z.ZodMiniNumberFormat>;
3359
+ mediaIds: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniUUID>>;
3360
+ }, z.z.core.$strip>, z.ZodMiniUnknown>>;
3361
+ platformSpecificSettings: z.ZodMiniOptional<z.ZodMiniIntersection<z.ZodMiniUnion<readonly [z.ZodMiniObject<{
3362
+ description: z.ZodMiniOptional<z.ZodMiniString<string>>;
3363
+ privacyStatus: z.ZodMiniOptional<z.ZodMiniEnum<{
3364
+ public: "public";
3365
+ unlisted: "unlisted";
3366
+ private: "private";
3367
+ }>>;
3368
+ madeForKids: z.ZodMiniOptional<z.ZodMiniBoolean<boolean>>;
3369
+ containsSyntheticMedia: z.ZodMiniOptional<z.ZodMiniBoolean<boolean>>;
3370
+ categoryId: z.ZodMiniOptional<z.ZodMiniEnum<{
3371
+ 1: "1";
3372
+ 2: "2";
3373
+ 10: "10";
3374
+ 15: "15";
3375
+ 17: "17";
3376
+ 19: "19";
3377
+ 20: "20";
3378
+ 22: "22";
3379
+ 23: "23";
3380
+ 24: "24";
3381
+ 25: "25";
3382
+ 26: "26";
3383
+ 27: "27";
3384
+ 28: "28";
3385
+ 29: "29";
3386
+ }>>;
3387
+ tags: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniString<string>>>;
3388
+ embeddable: z.ZodMiniOptional<z.ZodMiniBoolean<boolean>>;
3389
+ playlistId: z.ZodMiniOptional<z.ZodMiniString<string>>;
3390
+ }, z.z.core.$strip>, z.ZodMiniObject<{
3391
+ privacyLevel: z.ZodMiniEnum<{
3392
+ PUBLIC_TO_EVERYONE: "PUBLIC_TO_EVERYONE";
3393
+ FOLLOWER_OF_CREATOR: "FOLLOWER_OF_CREATOR";
3394
+ MUTUAL_FOLLOW_FRIENDS: "MUTUAL_FOLLOW_FRIENDS";
3395
+ SELF_ONLY: "SELF_ONLY";
3396
+ }>;
3397
+ disableComment: z.ZodMiniBoolean<boolean>;
3398
+ disableDuet: z.ZodMiniBoolean<boolean>;
3399
+ disableStitch: z.ZodMiniBoolean<boolean>;
3400
+ brandContentToggle: z.ZodMiniBoolean<boolean>;
3401
+ brandOrganicToggle: z.ZodMiniBoolean<boolean>;
3402
+ autoAddMusic: z.ZodMiniOptional<z.ZodMiniBoolean<boolean>>;
3403
+ videoMadeWithAi: z.ZodMiniOptional<z.ZodMiniBoolean<boolean>>;
3404
+ description: z.ZodMiniOptional<z.ZodMiniString<string>>;
3405
+ photoCoverIndex: z.ZodMiniOptional<z.ZodMiniNumberFormat>;
3406
+ }, z.z.core.$strip>, z.ZodMiniObject<{
3407
+ contentType: z.ZodMiniOptional<z.ZodMiniEnum<{
3408
+ story: "story";
3409
+ reels: "reels";
3410
+ }>>;
3411
+ shareToFeed: z.ZodMiniOptional<z.ZodMiniBoolean<boolean>>;
3412
+ trialParams: z.ZodMiniOptional<z.ZodMiniObject<{
3413
+ graduationStrategy: z.ZodMiniEnum<{
3414
+ MANUAL: "MANUAL";
3415
+ SS_PERFORMANCE: "SS_PERFORMANCE";
3416
+ }>;
3417
+ }, z.z.core.$strip>>;
3418
+ audioName: z.ZodMiniOptional<z.ZodMiniString<string>>;
3419
+ }, z.z.core.$strip>, z.ZodMiniObject<{
3420
+ contentType: z.ZodMiniOptional<z.ZodMiniEnum<{
3421
+ story: "story";
3422
+ }>>;
3423
+ }, z.z.core.$strip>, z.ZodMiniObject<{
3424
+ topicTag: z.ZodMiniOptional<z.ZodMiniString<string>>;
3425
+ }, z.z.core.$strip>, z.ZodMiniObject<{
3426
+ communityId: z.ZodMiniOptional<z.ZodMiniString<string>>;
3427
+ shareWithFollowers: z.ZodMiniOptional<z.ZodMiniBoolean<boolean>>;
3428
+ forSuperFollowersOnly: z.ZodMiniOptional<z.ZodMiniBoolean<boolean>>;
3429
+ replySettings: z.ZodMiniOptional<z.ZodMiniEnum<{
3430
+ following: "following";
3431
+ mentionedUsers: "mentionedUsers";
3432
+ subscribers: "subscribers";
3433
+ verified: "verified";
3434
+ }>>;
3435
+ quoteTweetId: z.ZodMiniOptional<z.ZodMiniString<string>>;
3436
+ replyToTweetId: z.ZodMiniOptional<z.ZodMiniString<string>>;
3437
+ poll: z.ZodMiniOptional<z.ZodMiniObject<{
3438
+ options: z.ZodMiniArray<z.ZodMiniString<string>>;
3439
+ durationMinutes: z.ZodMiniNumberFormat;
3440
+ }, z.z.core.$strip>>;
3441
+ }, z.z.core.$strip>, z.ZodMiniObject<{
3442
+ visibility: z.ZodMiniOptional<z.ZodMiniEnum<{
3443
+ CONNECTIONS: "CONNECTIONS";
3444
+ PUBLIC: "PUBLIC";
3445
+ }>>;
3446
+ }, z.z.core.$strip>, z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniNever>, z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniUnknown>]>, z.ZodMiniUnknown>>;
3447
+ }, z.z.core.$strip>>>;
3448
+ publishNow: z.ZodMiniOptional<z.ZodMiniBoolean<boolean>>;
3449
+ }, z.z.core.$strip>;
3450
+ declare const zUpdatePostPath: z.ZodMiniObject<{
3451
+ id: z.ZodMiniUUID;
3452
+ }, z.z.core.$strip>;
3453
+ /**
3454
+ * Post updated successfully
3455
+ */
3456
+ declare const zUpdatePostResponse: z.ZodMiniObject<{
3457
+ id: z.ZodMiniUUID;
3458
+ content: z.ZodMiniString<string>;
3459
+ status: z.ZodMiniEnum<{
3460
+ DRAFT: "DRAFT";
3461
+ SCHEDULED: "SCHEDULED";
3462
+ PUBLISHING: "PUBLISHING";
3463
+ PUBLISHED: "PUBLISHED";
3464
+ FAILED: "FAILED";
3465
+ }>;
3466
+ errorMessage: z.ZodMiniOptional<z.ZodMiniString<string>>;
3467
+ mediaIds: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniUUID>>;
3468
+ deletedMediaCount: z.ZodMiniOptional<z.ZodMiniNumberFormat>;
3469
+ scheduledAt: z.ZodMiniOptional<z.z.iso.ZodMiniISODateTime>;
3470
+ publishedAt: z.ZodMiniOptional<z.z.iso.ZodMiniISODateTime>;
3471
+ createdAt: z.z.iso.ZodMiniISODateTime;
3472
+ accounts: z.ZodMiniArray<z.ZodMiniObject<{
3473
+ accountId: z.ZodMiniUUID;
3474
+ platform: z.ZodMiniEnum<{
3475
+ TWITTER: "TWITTER";
3476
+ INSTAGRAM: "INSTAGRAM";
3477
+ FACEBOOK: "FACEBOOK";
3478
+ LINKEDIN: "LINKEDIN";
3479
+ YOUTUBE: "YOUTUBE";
3480
+ TIKTOK: "TIKTOK";
3481
+ THREADS: "THREADS";
3482
+ BLUESKY: "BLUESKY";
3483
+ }>;
3484
+ accountName: z.ZodMiniString<string>;
3485
+ status: z.ZodMiniEnum<{
3486
+ DRAFT: "DRAFT";
3487
+ SCHEDULED: "SCHEDULED";
3488
+ PUBLISHING: "PUBLISHING";
3489
+ PUBLISHED: "PUBLISHED";
3490
+ FAILED: "FAILED";
3491
+ }>;
3492
+ externalUrl: z.ZodMiniOptional<z.ZodMiniURL>;
3493
+ publishedAt: z.ZodMiniOptional<z.z.iso.ZodMiniISODateTime>;
3494
+ errorMessage: z.ZodMiniOptional<z.ZodMiniString<string>>;
3495
+ postOverrides: z.ZodMiniOptional<z.ZodMiniObject<{
3496
+ content: z.ZodMiniOptional<z.ZodMiniString<string>>;
3497
+ thumbnailTimestamp: z.ZodMiniOptional<z.ZodMiniNumberFormat>;
3498
+ mediaIds: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniUUID>>;
3499
+ }, z.z.core.$strip>>;
3500
+ platformSpecificSettings: z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniObject<{
3501
+ description: z.ZodMiniOptional<z.ZodMiniString<string>>;
3502
+ privacyStatus: z.ZodMiniOptional<z.ZodMiniEnum<{
3503
+ public: "public";
3504
+ unlisted: "unlisted";
3505
+ private: "private";
3506
+ }>>;
3507
+ madeForKids: z.ZodMiniOptional<z.ZodMiniBoolean<boolean>>;
3508
+ containsSyntheticMedia: z.ZodMiniOptional<z.ZodMiniBoolean<boolean>>;
3509
+ categoryId: z.ZodMiniOptional<z.ZodMiniEnum<{
3510
+ 1: "1";
3511
+ 2: "2";
3512
+ 10: "10";
3513
+ 15: "15";
3514
+ 17: "17";
3515
+ 19: "19";
3516
+ 20: "20";
3517
+ 22: "22";
3518
+ 23: "23";
3519
+ 24: "24";
3520
+ 25: "25";
3521
+ 26: "26";
3522
+ 27: "27";
3523
+ 28: "28";
3524
+ 29: "29";
3525
+ }>>;
3526
+ tags: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniString<string>>>;
3527
+ embeddable: z.ZodMiniOptional<z.ZodMiniBoolean<boolean>>;
3528
+ playlistId: z.ZodMiniOptional<z.ZodMiniString<string>>;
3529
+ }, z.z.core.$strip>, z.ZodMiniObject<{
3530
+ privacyLevel: z.ZodMiniEnum<{
3531
+ PUBLIC_TO_EVERYONE: "PUBLIC_TO_EVERYONE";
3532
+ FOLLOWER_OF_CREATOR: "FOLLOWER_OF_CREATOR";
3533
+ MUTUAL_FOLLOW_FRIENDS: "MUTUAL_FOLLOW_FRIENDS";
3534
+ SELF_ONLY: "SELF_ONLY";
3535
+ }>;
3536
+ disableComment: z.ZodMiniBoolean<boolean>;
3537
+ disableDuet: z.ZodMiniBoolean<boolean>;
3538
+ disableStitch: z.ZodMiniBoolean<boolean>;
3539
+ brandContentToggle: z.ZodMiniBoolean<boolean>;
3540
+ brandOrganicToggle: z.ZodMiniBoolean<boolean>;
3541
+ autoAddMusic: z.ZodMiniOptional<z.ZodMiniBoolean<boolean>>;
3542
+ videoMadeWithAi: z.ZodMiniOptional<z.ZodMiniBoolean<boolean>>;
3543
+ description: z.ZodMiniOptional<z.ZodMiniString<string>>;
3544
+ photoCoverIndex: z.ZodMiniOptional<z.ZodMiniNumberFormat>;
3545
+ }, z.z.core.$strip>, z.ZodMiniObject<{
3546
+ contentType: z.ZodMiniOptional<z.ZodMiniEnum<{
3547
+ story: "story";
3548
+ reels: "reels";
3549
+ }>>;
3550
+ shareToFeed: z.ZodMiniOptional<z.ZodMiniBoolean<boolean>>;
3551
+ trialParams: z.ZodMiniOptional<z.ZodMiniObject<{
3552
+ graduationStrategy: z.ZodMiniEnum<{
3553
+ MANUAL: "MANUAL";
3554
+ SS_PERFORMANCE: "SS_PERFORMANCE";
3555
+ }>;
3556
+ }, z.z.core.$strip>>;
3557
+ audioName: z.ZodMiniOptional<z.ZodMiniString<string>>;
3558
+ }, z.z.core.$strip>, z.ZodMiniObject<{
3559
+ contentType: z.ZodMiniOptional<z.ZodMiniEnum<{
3560
+ story: "story";
3561
+ }>>;
3562
+ }, z.z.core.$strip>, z.ZodMiniObject<{
3563
+ topicTag: z.ZodMiniOptional<z.ZodMiniString<string>>;
3564
+ }, z.z.core.$strip>, z.ZodMiniObject<{
3565
+ communityId: z.ZodMiniOptional<z.ZodMiniString<string>>;
3566
+ shareWithFollowers: z.ZodMiniOptional<z.ZodMiniBoolean<boolean>>;
3567
+ forSuperFollowersOnly: z.ZodMiniOptional<z.ZodMiniBoolean<boolean>>;
3568
+ replySettings: z.ZodMiniOptional<z.ZodMiniEnum<{
3569
+ following: "following";
3570
+ mentionedUsers: "mentionedUsers";
3571
+ subscribers: "subscribers";
3572
+ verified: "verified";
3573
+ }>>;
3574
+ quoteTweetId: z.ZodMiniOptional<z.ZodMiniString<string>>;
3575
+ replyToTweetId: z.ZodMiniOptional<z.ZodMiniString<string>>;
3576
+ poll: z.ZodMiniOptional<z.ZodMiniObject<{
3577
+ options: z.ZodMiniArray<z.ZodMiniString<string>>;
3578
+ durationMinutes: z.ZodMiniNumberFormat;
3579
+ }, z.z.core.$strip>>;
3580
+ }, z.z.core.$strip>, z.ZodMiniObject<{
3581
+ visibility: z.ZodMiniOptional<z.ZodMiniEnum<{
3582
+ CONNECTIONS: "CONNECTIONS";
3583
+ PUBLIC: "PUBLIC";
3584
+ }>>;
3585
+ }, z.z.core.$strip>, z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniNever>, z.ZodMiniRecord<z.ZodMiniString<string>, z.ZodMiniUnknown>]>>;
3586
+ }, z.z.core.$strip>>;
3587
+ }, z.z.core.$strip>;
3588
+ declare const zRemovePostAccountPath: z.ZodMiniObject<{
3589
+ id: z.ZodMiniUUID;
3590
+ accountId: z.ZodMiniUUID;
3591
+ }, z.z.core.$strip>;
3592
+ /**
3593
+ * Account removed from post successfully
3594
+ */
3595
+ declare const zRemovePostAccountResponse: z.ZodMiniVoid;
3596
+ declare const zListAccountsQuery: z.ZodMiniObject<{
3597
+ workspaceId: z.ZodMiniOptional<z.ZodMiniUUID>;
3598
+ platform: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniEnum<{
3599
+ TWITTER: "TWITTER";
3600
+ INSTAGRAM: "INSTAGRAM";
3601
+ FACEBOOK: "FACEBOOK";
3602
+ LINKEDIN: "LINKEDIN";
3603
+ YOUTUBE: "YOUTUBE";
3604
+ TIKTOK: "TIKTOK";
3605
+ THREADS: "THREADS";
3606
+ BLUESKY: "BLUESKY";
3607
+ }>>>;
3608
+ }, z.z.core.$strip>;
3609
+ /**
3610
+ * Accounts retrieved successfully
3611
+ */
3612
+ declare const zListAccountsResponse: z.ZodMiniObject<{
3613
+ accounts: z.ZodMiniArray<z.ZodMiniObject<{
3614
+ id: z.ZodMiniUUID;
3615
+ platform: z.ZodMiniIntersection<z.ZodMiniEnum<{
3616
+ TWITTER: "TWITTER";
3617
+ INSTAGRAM: "INSTAGRAM";
3618
+ FACEBOOK: "FACEBOOK";
3619
+ LINKEDIN: "LINKEDIN";
3620
+ YOUTUBE: "YOUTUBE";
3621
+ TIKTOK: "TIKTOK";
3622
+ THREADS: "THREADS";
3623
+ BLUESKY: "BLUESKY";
3624
+ }>, z.ZodMiniUnknown>;
3625
+ platformName: z.ZodMiniOptional<z.ZodMiniNullable<z.ZodMiniString<string>>>;
3626
+ platformUsername: z.ZodMiniString<string>;
3627
+ platformUserId: z.ZodMiniString<string>;
3628
+ platformPicture: z.ZodMiniOptional<z.ZodMiniNullable<z.ZodMiniString<string>>>;
3629
+ workspaceId: z.ZodMiniOptional<z.ZodMiniNullable<z.ZodMiniUUID>>;
3630
+ }, z.z.core.$strip>>;
3631
+ }, z.z.core.$strip>;
3632
+ declare const zGetTikTokCreatorInfoPath: z.ZodMiniObject<{
3633
+ id: z.ZodMiniUUID;
3634
+ }, z.z.core.$strip>;
3635
+ /**
3636
+ * Creator info retrieved successfully
3637
+ */
3638
+ declare const zGetTikTokCreatorInfoResponse: z.ZodMiniObject<{
3639
+ privacyLevelOptions: z.ZodMiniArray<z.ZodMiniString<string>>;
3640
+ commentDisabled: z.ZodMiniBoolean<boolean>;
3641
+ duetDisabled: z.ZodMiniBoolean<boolean>;
3642
+ stitchDisabled: z.ZodMiniBoolean<boolean>;
3643
+ maxVideoPostDurationSec: z.ZodMiniNumber<number>;
3644
+ }, z.z.core.$strip>;
3645
+ /**
3646
+ * Workspaces retrieved successfully
3647
+ */
3648
+ declare const zListWorkspacesResponse: z.ZodMiniObject<{
3649
+ workspaces: z.ZodMiniArray<z.ZodMiniObject<{
3650
+ id: z.ZodMiniUUID;
3651
+ name: z.ZodMiniString<string>;
3652
+ description: z.ZodMiniOptional<z.ZodMiniNullable<z.ZodMiniString<string>>>;
3653
+ color: z.ZodMiniString<string>;
3654
+ accountCount: z.ZodMiniNumberFormat;
3655
+ createdAt: z.z.iso.ZodMiniISODateTime;
3656
+ }, z.z.core.$strip>>;
3657
+ }, z.z.core.$strip>;
3658
+ declare const zCreateWorkspaceBody: z.ZodMiniObject<{
3659
+ name: z.ZodMiniString<string>;
3660
+ description: z.ZodMiniOptional<z.ZodMiniString<string>>;
3661
+ color: z.ZodMiniDefault<z.ZodMiniOptional<z.ZodMiniString<string>>>;
3662
+ }, z.z.core.$strip>;
3663
+ /**
3664
+ * Workspace created successfully
3665
+ */
3666
+ declare const zCreateWorkspaceResponse: z.ZodMiniObject<{
3667
+ id: z.ZodMiniUUID;
3668
+ name: z.ZodMiniString<string>;
3669
+ description: z.ZodMiniOptional<z.ZodMiniNullable<z.ZodMiniString<string>>>;
3670
+ color: z.ZodMiniString<string>;
3671
+ accountCount: z.ZodMiniNumberFormat;
3672
+ createdAt: z.z.iso.ZodMiniISODateTime;
3673
+ }, z.z.core.$strip>;
3674
+ declare const zGetWorkspacePath: z.ZodMiniObject<{
3675
+ id: z.ZodMiniUUID;
3676
+ }, z.z.core.$strip>;
3677
+ /**
3678
+ * Workspace retrieved successfully
3679
+ */
3680
+ declare const zGetWorkspaceResponse: z.ZodMiniObject<{
3681
+ id: z.ZodMiniUUID;
3682
+ name: z.ZodMiniString<string>;
3683
+ description: z.ZodMiniOptional<z.ZodMiniNullable<z.ZodMiniString<string>>>;
3684
+ color: z.ZodMiniString<string>;
3685
+ accountCount: z.ZodMiniNumberFormat;
3686
+ createdAt: z.z.iso.ZodMiniISODateTime;
3687
+ }, z.z.core.$strip>;
3688
+ declare const zListMediaQuery: z.ZodMiniObject<{
3689
+ page: z.ZodMiniDefault<z.ZodMiniOptional<z.ZodMiniNumberFormat>>;
3690
+ limit: z.ZodMiniDefault<z.ZodMiniOptional<z.ZodMiniNumberFormat>>;
3691
+ ids: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniUUID>>;
3692
+ mediaTypes: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniEnum<{
3693
+ IMAGE: "IMAGE";
3694
+ VIDEO: "VIDEO";
3695
+ }>>>;
3696
+ sources: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniEnum<{
3697
+ UPLOAD: "UPLOAD";
3698
+ GENERATED: "GENERATED";
3699
+ AI_GENERATED: "AI_GENERATED";
3700
+ }>>>;
3701
+ }, z.z.core.$strip>;
3702
+ /**
3703
+ * Media retrieved successfully
3704
+ */
3705
+ declare const zListMediaResponse: z.ZodMiniObject<{
3706
+ media: z.ZodMiniArray<z.ZodMiniObject<{
3707
+ id: z.ZodMiniUUID;
3708
+ type: z.ZodMiniEnum<{
3709
+ IMAGE: "IMAGE";
3710
+ VIDEO: "VIDEO";
3711
+ }>;
3712
+ url: z.ZodMiniURL;
3713
+ source: z.ZodMiniEnum<{
3714
+ UPLOAD: "UPLOAD";
3715
+ GENERATED: "GENERATED";
3716
+ AI_GENERATED: "AI_GENERATED";
3717
+ }>;
3718
+ created_at: z.z.iso.ZodMiniISODateTime;
3719
+ usageCount: z.ZodMiniNumberFormat;
3720
+ }, z.z.core.$strip>>;
3721
+ pagination: z.ZodMiniObject<{
3722
+ page: z.ZodMiniNumberFormat;
3723
+ limit: z.ZodMiniNumberFormat;
3724
+ total: z.ZodMiniNumberFormat;
3725
+ totalPages: z.ZodMiniNumberFormat;
3726
+ hasNext: z.ZodMiniBoolean<boolean>;
3727
+ hasPrev: z.ZodMiniBoolean<boolean>;
3728
+ }, z.z.core.$strip>;
3729
+ }, z.z.core.$strip>;
3730
+ declare const zUploadMediaBody: z.ZodMiniObject<{
3731
+ file: z.ZodMiniString<string>;
3732
+ }, z.z.core.$strip>;
3733
+ /**
3734
+ * Media uploaded successfully
3735
+ */
3736
+ declare const zUploadMediaResponse: z.ZodMiniObject<{
3737
+ id: z.ZodMiniUUID;
3738
+ type: z.ZodMiniEnum<{
3739
+ IMAGE: "IMAGE";
3740
+ VIDEO: "VIDEO";
3741
+ }>;
3742
+ url: z.ZodMiniURL;
3743
+ source: z.ZodMiniEnum<{
3744
+ UPLOAD: "UPLOAD";
3745
+ GENERATED: "GENERATED";
3746
+ AI_GENERATED: "AI_GENERATED";
3747
+ }>;
3748
+ created_at: z.z.iso.ZodMiniISODateTime;
3749
+ usageCount: z.ZodMiniNumberFormat;
3750
+ }, z.z.core.$strip>;
3751
+ declare const zGetMediaPath: z.ZodMiniObject<{
3752
+ id: z.ZodMiniUUID;
3753
+ }, z.z.core.$strip>;
3754
+ /**
3755
+ * Media retrieved successfully
3756
+ */
3757
+ declare const zGetMediaResponse: z.ZodMiniObject<{
3758
+ id: z.ZodMiniUUID;
3759
+ type: z.ZodMiniEnum<{
3760
+ IMAGE: "IMAGE";
3761
+ VIDEO: "VIDEO";
3762
+ }>;
3763
+ url: z.ZodMiniURL;
3764
+ source: z.ZodMiniEnum<{
3765
+ UPLOAD: "UPLOAD";
3766
+ GENERATED: "GENERATED";
3767
+ AI_GENERATED: "AI_GENERATED";
3768
+ }>;
3769
+ created_at: z.z.iso.ZodMiniISODateTime;
3770
+ usageCount: z.ZodMiniNumberFormat;
3771
+ }, z.z.core.$strip>;
3772
+
3773
+ interface PublishQOptions {
3774
+ /**
3775
+ * Your PublishQ API key (begins with `pq_live_`). Create one in the web app
3776
+ * under **Settings → API Keys** and select the scopes you need.
3777
+ */
3778
+ apiKey: string;
3779
+ /**
3780
+ * Override the API base URL. Defaults to `https://publishq.com/api/v1`.
3781
+ * Mostly useful for staging or local development.
3782
+ */
3783
+ baseUrl?: string;
3784
+ }
3785
+ /**
3786
+ * Official TypeScript SDK for the PublishQ API.
3787
+ *
3788
+ * Schedule and publish content across your social platforms with a single call.
3789
+ *
3790
+ * @example
3791
+ * ```ts
3792
+ * import PublishQ from "@publishq/sdk";
3793
+ *
3794
+ * const publishq = new PublishQ({ apiKey: process.env.PUBLISHQ_API_KEY! });
3795
+ *
3796
+ * const { data } = await publishq.accounts.list();
3797
+ * if (data) {
3798
+ * for (const account of data.accounts) {
3799
+ * console.log(account.platform, account.accountName);
3800
+ * }
3801
+ * }
3802
+ * ```
3803
+ */
3804
+ declare class PublishQ {
3805
+ /**
3806
+ * Post resources — create, list, retrieve, update, and delete posts across
3807
+ * the connected accounts this API key is scoped to.
3808
+ */
3809
+ readonly posts: ReturnType<typeof createPostsNamespace>;
3810
+ /**
3811
+ * Account resources — list connected social accounts and read the TikTok
3812
+ * creator info required before posting to TikTok.
3813
+ */
3814
+ readonly accounts: ReturnType<typeof createAccountsNamespace>;
3815
+ /**
3816
+ * Workspace resources — list, create, and retrieve the workspaces that
3817
+ * organize your connected accounts.
3818
+ */
3819
+ readonly workspaces: ReturnType<typeof createWorkspacesNamespace>;
3820
+ /**
3821
+ * Media resources — upload, list, and retrieve media files you can attach
3822
+ * to posts.
3823
+ */
3824
+ readonly media: ReturnType<typeof createMediaNamespace>;
3825
+ constructor(options: PublishQOptions);
3826
+ }
3827
+ declare function createPostsNamespace(client: Client): {
3828
+ /** List posts. Optionally filter by status/workspace/account and paginate. Wraps `Posts.listPosts`. */
3829
+ list: (query?: ListPostsData['query']) => Promise<({
3830
+ data: PostsResponse;
3831
+ error: undefined;
3832
+ } | {
3833
+ data: undefined;
3834
+ error: ApiError;
3835
+ }) & {
3836
+ request?: Request | undefined;
3837
+ response?: Response | undefined;
3838
+ }>;
3839
+ /** Create a post for one or more connected accounts. Wraps `Posts.createPost`. */
3840
+ create: (body: CreatePostData['body']) => Promise<({
3841
+ data: Post;
3842
+ error: undefined;
3843
+ } | {
3844
+ data: undefined;
3845
+ error: ApiError;
3846
+ }) & {
3847
+ request?: Request | undefined;
3848
+ response?: Response | undefined;
3849
+ }>;
3850
+ /** Get one post by its PublishQ post ID. Wraps `Posts.getPost`. */
3851
+ get: (id: string) => Promise<({
3852
+ data: Post;
3853
+ error: undefined;
3854
+ } | {
3855
+ data: undefined;
3856
+ error: ApiError;
3857
+ }) & {
3858
+ request?: Request | undefined;
3859
+ response?: Response | undefined;
3860
+ }>;
3861
+ /** Update a draft or scheduled post. Wraps `Posts.updatePost`. */
3862
+ update: (id: string, body: UpdatePostData['body']) => Promise<({
3863
+ data: Post;
3864
+ error: undefined;
3865
+ } | {
3866
+ data: undefined;
3867
+ error: ApiError;
3868
+ }) & {
3869
+ request?: Request | undefined;
3870
+ response?: Response | undefined;
3871
+ }>;
3872
+ /** Delete a scheduled or draft post by its ID. Wraps `Posts.deletePost`. */
3873
+ delete: (id: string) => Promise<({
3874
+ data: void;
3875
+ error: undefined;
3876
+ } | {
3877
+ data: undefined;
3878
+ error: ApiError;
3879
+ }) & {
3880
+ request?: Request | undefined;
3881
+ response?: Response | undefined;
3882
+ }>;
3883
+ /** Remove one account from a post so it's no longer published there. Wraps `Posts.removePostAccount`. */
3884
+ removeAccount: (id: string, accountId: string) => Promise<({
3885
+ data: void;
3886
+ error: undefined;
3887
+ } | {
3888
+ data: undefined;
3889
+ error: ApiError;
3890
+ }) & {
3891
+ request?: Request | undefined;
3892
+ response?: Response | undefined;
3893
+ }>;
3894
+ };
3895
+ declare function createAccountsNamespace(client: Client): {
3896
+ /** List connected social accounts. Filter by workspace and platform. Wraps `Accounts.listAccounts`. */
3897
+ list: (query?: ListAccountsData['query']) => Promise<({
3898
+ data: AccountsResponse;
3899
+ error: undefined;
3900
+ } | {
3901
+ data: undefined;
3902
+ error: ApiError;
3903
+ }) & {
3904
+ request?: Request | undefined;
3905
+ response?: Response | undefined;
3906
+ }>;
3907
+ /** Get a TikTok account's creator info (privacy options, limits) before posting. Wraps `Accounts.getTikTokCreatorInfo`. */
3908
+ getTikTokCreatorInfo: (id: string) => Promise<({
3909
+ data: TikTokCreatorInfoResponse;
3910
+ error: undefined;
3911
+ } | {
3912
+ data: undefined;
3913
+ error: ApiError;
3914
+ }) & {
3915
+ request?: Request | undefined;
3916
+ response?: Response | undefined;
3917
+ }>;
3918
+ };
3919
+ declare function createWorkspacesNamespace(client: Client): {
3920
+ /** List your workspaces with names, colors, and account counts. Wraps `Workspaces.listWorkspaces`. */
3921
+ list: () => Promise<({
3922
+ data: WorkspacesResponse;
3923
+ error: undefined;
3924
+ } | {
3925
+ data: undefined;
3926
+ error: ApiError;
3927
+ }) & {
3928
+ request?: Request | undefined;
3929
+ response?: Response | undefined;
3930
+ }>;
3931
+ /** Create a workspace to organize your connected accounts. Wraps `Workspaces.createWorkspace`. */
3932
+ create: (body: CreateWorkspaceData['body']) => Promise<({
3933
+ data: Workspace;
3934
+ error: undefined;
3935
+ } | {
3936
+ data: undefined;
3937
+ error: ApiError;
3938
+ }) & {
3939
+ request?: Request | undefined;
3940
+ response?: Response | undefined;
3941
+ }>;
3942
+ /** Get one workspace by ID. Wraps `Workspaces.getWorkspace`. */
3943
+ get: (id: string) => Promise<({
3944
+ data: Workspace;
3945
+ error: undefined;
3946
+ } | {
3947
+ data: undefined;
3948
+ error: ApiError;
3949
+ }) & {
3950
+ request?: Request | undefined;
3951
+ response?: Response | undefined;
3952
+ }>;
3953
+ };
3954
+ declare function createMediaNamespace(client: Client): {
3955
+ /** List your uploaded and generated media files. Filter by id, type, source. Wraps `Media.listMedia`. */
3956
+ list: (query?: ListMediaData['query']) => Promise<({
3957
+ data: MediaListResponse;
3958
+ error: undefined;
3959
+ } | {
3960
+ data: undefined;
3961
+ error: ApiError;
3962
+ }) & {
3963
+ request?: Request | undefined;
3964
+ response?: Response | undefined;
3965
+ }>;
3966
+ /** Upload one media file (multipart) and get back a media ID to attach to posts. Wraps `Media.uploadMedia`. */
3967
+ upload: (body: UploadMediaData['body']) => Promise<({
3968
+ data: Media$1;
3969
+ error: undefined;
3970
+ } | {
3971
+ data: undefined;
3972
+ error: ApiError;
3973
+ }) & {
3974
+ request?: Request | undefined;
3975
+ response?: Response | undefined;
3976
+ }>;
3977
+ /** Get one media file by ID. Wraps `Media.getMedia`. */
3978
+ get: (id: string) => Promise<({
3979
+ data: Media$1;
3980
+ error: undefined;
3981
+ } | {
3982
+ data: undefined;
3983
+ error: ApiError;
3984
+ }) & {
3985
+ request?: Request | undefined;
3986
+ response?: Response | undefined;
3987
+ }>;
3988
+ };
3989
+
3990
+ export { type Account, Accounts, type AccountsResponse, type ApiError, type ApiErrorCode, type ApiKeyScope, type BlueskyPlatformSpecificSettings, type ClientOptions, type CreatePostAccount, type CreatePostData, type CreatePostError, type CreatePostErrors, type CreatePostRequest, type CreatePostResponse, type CreatePostResponses, type CreateWorkspaceData, type CreateWorkspaceError, type CreateWorkspaceErrors, type CreateWorkspaceRequest, type CreateWorkspaceResponse, type CreateWorkspaceResponses, type DeletePostData, type DeletePostError, type DeletePostErrors, type DeletePostResponse, type DeletePostResponses, type FacebookPlatformSpecificSettings, type GetMediaData, type GetMediaError, type GetMediaErrors, type GetMediaResponse, type GetMediaResponses, type GetPostData, type GetPostError, type GetPostErrors, type GetPostResponse, type GetPostResponses, type GetTikTokCreatorInfoData, type GetTikTokCreatorInfoError, type GetTikTokCreatorInfoErrors, type GetTikTokCreatorInfoResponse, type GetTikTokCreatorInfoResponses, type GetWorkspaceData, type GetWorkspaceError, type GetWorkspaceErrors, type GetWorkspaceResponse, type GetWorkspaceResponses, type InstagramPlatformSpecificSettings, type InstagramTrialParams, type LinkedInPlatformSpecificSettings, type ListAccountsData, type ListAccountsError, type ListAccountsErrors, type ListAccountsResponse, type ListAccountsResponses, type ListMediaData, type ListMediaError, type ListMediaErrors, type ListMediaResponse, type ListMediaResponses, type ListPostsData, type ListPostsError, type ListPostsErrors, type ListPostsResponse, type ListPostsResponses, type ListWorkspacesData, type ListWorkspacesError, type ListWorkspacesErrors, type ListWorkspacesResponse, type ListWorkspacesResponses, type Media$1 as Media, Media as Media2, type MediaListResponse, type MediaSource, type MediaType, type Options, type Pagination, type PlatformSpecificSettings, type Post, type PostAccount, type PostOverrides, type PostStatus, Posts, type PostsResponse, PublishQ, type PublishQOptions, type RemovePostAccountData, type RemovePostAccountError, type RemovePostAccountErrors, type RemovePostAccountResponse, type RemovePostAccountResponses, type SocialPlatform, type SuccessMessage, type ThreadsPlatformSpecificSettings, type TikTokCreatorInfoResponse, type TikTokPlatformSpecificSettings, type TwitterPlatformSpecificSettings, type UpdatePostData, type UpdatePostError, type UpdatePostErrors, type UpdatePostRequest, type UpdatePostResponse, type UpdatePostResponses, type UploadMediaData, type UploadMediaError, type UploadMediaErrors, type UploadMediaRequest, type UploadMediaResponse, type UploadMediaResponses, type Workspace, Workspaces, type WorkspacesResponse, type YouTubePlatformSpecificSettings, PublishQ as default, zAccount, zAccountsResponse, zApiError, zApiErrorCode, zApiKeyScope, zBlueskyPlatformSpecificSettings, zCreatePostAccount, zCreatePostBody, zCreatePostRequest, zCreatePostResponse, zCreateWorkspaceBody, zCreateWorkspaceRequest, zCreateWorkspaceResponse, zDeletePostPath, zDeletePostResponse, zFacebookPlatformSpecificSettings, zGetMediaPath, zGetMediaResponse, zGetPostPath, zGetPostResponse, zGetTikTokCreatorInfoPath, zGetTikTokCreatorInfoResponse, zGetWorkspacePath, zGetWorkspaceResponse, zInstagramPlatformSpecificSettings, zInstagramTrialParams, zLinkedInPlatformSpecificSettings, zListAccountsQuery, zListAccountsResponse, zListMediaQuery, zListMediaResponse, zListPostsQuery, zListPostsResponse, zListWorkspacesResponse, zMedia, zMediaListResponse, zMediaSource, zMediaType, zPagination, zPlatformSpecificSettings, zPost, zPostAccount, zPostOverrides, zPostStatus, zPostsResponse, zRemovePostAccountPath, zRemovePostAccountResponse, zSocialPlatform, zSuccessMessage, zThreadsPlatformSpecificSettings, zTikTokCreatorInfoResponse, zTikTokPlatformSpecificSettings, zTwitterPlatformSpecificSettings, zUpdatePostBody, zUpdatePostPath, zUpdatePostRequest, zUpdatePostResponse, zUploadMediaBody, zUploadMediaRequest, zUploadMediaResponse, zWorkspace, zWorkspacesResponse, zYouTubePlatformSpecificSettings };