interface FaturaData { id?: string; [key: string]: any; } interface ServiceResponse { success: boolean; data?: T; documents?: T[]; total?: number; error?: string; message?: string; } const emptyList = (): ServiceResponse => ({ success: true, documents: [], total: 0 }); const removed = (message = 'Service removido'): ServiceResponse => ({ success: false, error: message, message }); export const faturaService = { listar: async (_page = 1, _limit = 10) => emptyList(), buscarPorNome: async (_nome: string, _page = 1, _limit = 10) => emptyList(), criar: async (_data?: FaturaData) => removed(), criarFatura: async (_data?: FaturaData) => removed(), buscarPorUserId: async () => emptyList(), buscarPorId: async (_id?: string) => ({ success: true, data: null as FaturaData | null }), atualizar: async (_id?: string, _data?: Partial) => removed(), deletar: async (_id?: string) => removed(), atualizarFaturaParcial: async (_id?: string, _data?: Partial) => removed(), };