audiopod-sdk
Version:
AudioPod SDK for Node.js and React - Professional Audio Processing powered by AI
109 lines • 3.42 kB
TypeScript
/**
* Music Service
* Handles music generation operations
*/
import { AudioPodClient } from '../client/AudioPodClient';
import { MusicGenerationRequest, MusicGenerationResult, Job, RapGenerationRequest, InstrumentalGenerationRequest, VocalsGenerationRequest, SamplesGenerationRequest, Audio2AudioRequest, SongBloomRequest, RetakeRequest, RepaintRequest, ExtendRequest, EditRequest } from '../types';
export declare class MusicService {
private client;
constructor(client: AudioPodClient);
/**
* Generate music from text prompt
*/
generateMusic(request: MusicGenerationRequest): Promise<MusicGenerationResult>;
/**
* Generate rap music from prompt and lyrics
*/
generateRap(request: RapGenerationRequest): Promise<MusicGenerationResult>;
/**
* Generate instrumental music from prompt
*/
generateInstrumental(request: InstrumentalGenerationRequest): Promise<MusicGenerationResult>;
/**
* Generate vocals from prompt and lyrics
*/
generateVocals(request: VocalsGenerationRequest): Promise<MusicGenerationResult>;
/**
* Generate audio samples from prompt
*/
generateSamples(request: SamplesGenerationRequest): Promise<MusicGenerationResult>;
/**
* Transform audio to audio with new characteristics
*/
generateAudio2Audio(request: Audio2AudioRequest): Promise<MusicGenerationResult>;
/**
* Generate music using SongBloom with reference audio
*/
generateSongBloom(request: SongBloomRequest): Promise<MusicGenerationResult>;
/**
* Create a retake/variation of existing music
*/
retakeMusic(request: RetakeRequest): Promise<MusicGenerationResult>;
/**
* Repaint sections of existing music
*/
repaintMusic(request: RepaintRequest): Promise<MusicGenerationResult>;
/**
* Extend existing music with additional content
*/
extendMusic(request: ExtendRequest): Promise<MusicGenerationResult>;
/**
* Edit existing music with new style or lyrics
*/
editMusic(request: EditRequest): Promise<MusicGenerationResult>;
/**
* Get music generation job status
*/
getJobStatus(jobId: number): Promise<Job>;
/**
* List music generation jobs
*/
listJobs(options?: {
limit?: number;
offset?: number;
status?: string;
}): Promise<Job[]>;
/**
* Like a music track
*/
likeMusicTrack(jobId: number): Promise<{
liked: boolean;
totalLikes: number;
}>;
/**
* Unlike a music track
*/
unlikeMusicTrack(jobId: number): Promise<{
liked: boolean;
totalLikes: number;
}>;
/**
* Share a music track
*/
shareMusicTrack(jobId: number, options?: {
title?: string;
description?: string;
expirationDate?: string;
}): Promise<{
shareToken: string;
shareUrl: string;
}>;
/**
* Get music track statistics
*/
getMusicTrackStats(jobId: number): Promise<{
likes: number;
dislikes: number;
shares: number;
comments: number;
}>;
/**
* Delete a music generation job
*/
deleteMusicJob(jobId: number): Promise<void>;
/**
* Get shared music track (public access)
*/
getSharedTrack(shareToken: string): Promise<MusicGenerationResult>;
}
//# sourceMappingURL=MusicService.d.ts.map