import type { PlatformTone } from "../_internal/types.gen"; import type { RequestOptions } from "../base-client"; import { RequestBuilder } from "../request-builder"; /** Attributes accepted when creating a platform tone. */ export type CreatePlatformToneAttributes = { /** Required. Social platform this tone applies to. */ platform: "facebook" | "instagram" | "threads" | "twitter" | "linkedin" | "reddit" | "bluesky"; /** Required. Brand identity UUID this tone belongs to. */ brand_identity_id: string; /** Tone preset. Default: "casual". */ tone?: "casual" | "professional" | "humorous" | "inspirational" | "educational" | "promotional"; /** Emoji usage policy. Default: "minimal". */ emoji_policy?: "none" | "minimal" | "moderate" | "heavy"; /** Number of hashtags to include. Default: 5. */ hashtag_count?: number; /** Maximum character length for posts on this platform. */ max_length?: number; /** Call-to-action text to include in generated copy. */ call_to_action?: string; /** Free-form instructions for AI content generation on this platform. */ custom_instructions?: string; }; /** Attributes accepted when updating a platform tone (PATCH semantics). */ export type UpdatePlatformToneAttributes = Partial>; export declare function createPlatformTonesNamespace(rb: RequestBuilder): { /** * List all platform tones visible to the current actor. * * @param options - Optional request options (pagination, filters, sorting). * @returns A list of `PlatformTone` records. * * @example * ```ts * const tones = await admin.platformTones.list(); * ``` */ list: (options?: RequestOptions) => Promise; /** * Get a platform tone by ID. * * @param id - The UUID of the platform tone. * @param options - Optional request options. * @returns The `PlatformTone` record. * * @example * ```ts * const tone = await admin.platformTones.get("tone-uuid"); * ``` */ get: (id: string, options?: RequestOptions) => Promise; /** * Create a new platform tone. * * @param attributes - Platform tone attributes. * @param options - Optional request options. * @returns The created `PlatformTone`. * * @example * ```ts * const tone = await admin.platformTones.create({ * name: "Professional", * description: "Formal business communication tone", * }); * ``` */ create: (attributes: CreatePlatformToneAttributes, options?: RequestOptions) => Promise; /** * Update a platform tone. * * @param id - The UUID of the platform tone. * @param attributes - Fields to update. * @param options - Optional request options. * @returns The updated `PlatformTone`. * * @example * ```ts * const tone = await admin.platformTones.update("tone-uuid", { * name: "Casual", * }); * ``` */ update: (id: string, attributes: UpdatePlatformToneAttributes, options?: RequestOptions) => Promise; /** * Delete a platform tone. * * @param id - The UUID of the platform tone. * @param options - Optional request options. * @returns `true` on success. * * @example * ```ts * await admin.platformTones.delete("tone-uuid"); * ``` */ delete: (id: string, options?: RequestOptions) => Promise; /** * List platform tones for a specific brand identity. * * @param brandIdentityId - The UUID of the brand identity. * @param options - Optional request options. * @returns A list of `PlatformTone` records. * * @example * ```ts * const tones = await admin.platformTones.listByBrand("brand-uuid"); * ``` */ listByBrand: (brandIdentityId: string, options?: RequestOptions) => Promise; }; //# sourceMappingURL=platform-tones.d.ts.map