UNPKG

@ai-growth/n8n-nodes-wordpress

Version:

n8n node for WordPress integration with AI GROWTH - SEO WP plugin

71 lines (70 loc) 2.38 kB
import { WordPressClient } from '../utils/WordPressClient'; import { IImageMetadata, IWordPressImage } from '../interfaces/WordPressInterfaces'; import { IImageDownloadOptions } from './ImageDownloadService'; /** * Opções para upload de mídia */ export interface IMediaUploadOptions { /** * Nome do arquivo (opcional, será extraído da URL se não fornecido) */ filename?: string; /** * Tipo MIME do arquivo (opcional, será determinado a partir da URL se não fornecido) */ mimeType?: string; /** * Metadados da imagem */ metadata?: IImageMetadata; /** * Opções para download da imagem (se upload a partir de URL) */ downloadOptions?: IImageDownloadOptions; } /** * Serviço para upload de imagens para a biblioteca de mídia do WordPress */ export declare class MediaUploadService { private client; private downloadService; private urlService; /** * Construtor do serviço * @param client Cliente WordPress */ constructor(client: WordPressClient); /** * Faz upload de uma imagem para a biblioteca de mídia a partir de uma URL * @param imageUrl URL da imagem * @param options Opções de upload * @returns Imagem carregada */ uploadFromUrl(imageUrl: string, options?: IMediaUploadOptions): Promise<IWordPressImage>; /** * Faz upload de dados binários de imagem para a biblioteca de mídia * @param buffer Buffer contendo os dados da imagem * @param options Opções de upload * @returns Imagem carregada */ uploadBuffer(buffer: Buffer, options?: IMediaUploadOptions): Promise<IWordPressImage>; /** * Atualiza os metadados de uma imagem existente * @param imageId ID da imagem na biblioteca de mídia * @param metadata Metadados a serem atualizados * @returns Imagem atualizada */ updateImageMetadata(imageId: number, metadata: IImageMetadata): Promise<IWordPressImage>; /** * Obtém uma mídia específica da biblioteca * @param mediaId ID da mídia * @returns Informações da mídia */ getMedia(mediaId: number): Promise<IWordPressImage>; /** * Formata a resposta da API para o formato de IWordPressImage * @param response Resposta da API * @returns Imagem formatada */ private formatMediaResponse; }