declare const MUSIC_SOURCES: readonly ["kugou"];
type MusicSource = (typeof MUSIC_SOURCES)[number];

/**
 * 音乐模块类型定义
 */

interface MusicTrack {
    id: string;
    name: string;
    artist: string;
    album?: string;
    pic?: string;
    url?: string;
    lrc?: string;
    source: MusicSource;
    isVip?: boolean;
    playable?: boolean;
}
interface SearchOptions {
    keyword: string;
    source?: MusicSource;
    limit?: number;
    offset?: number;
    miku?: boolean;
}
interface SearchResult {
    tracks: MusicTrack[];
    total: number;
}
interface MusicApiResponse<T = any> {
    code: number;
    data?: T;
    message?: string;
}

/**
 * 创建搜索接口处理器
 */
declare const createSearchHandler: () => (req: Request) => Promise<Response>;
/**
 * 创建歌曲链接接口处理器
 */
declare const createSongUrlHandler: () => (req: Request) => Promise<Response>;
/**
 * 创建歌词接口处理器
 */
declare const createLyricHandler: () => (req: Request) => Promise<Response>;

/**
 * Meting 服务集成
 */
declare class MetingService {
    private instances;
    private getInstance;
    /**
     * 搜索歌曲
     */
    search(options: SearchOptions): Promise<any>;
    /**
     * 获取歌曲详情（包含播放链接）
     */
    getSongUrl(id: string, source?: string): Promise<any | undefined>;
    /**
     * 获取歌词
     */
    getLyric(id: string, source?: string): Promise<any | undefined>;
}
declare const musicService: MetingService;

/**
 * 专门用于搜索 Miku/初音未来 相关歌曲的服务
 */
declare class MikuMusicService {
    private baseService;
    private mikuKeywords;
    constructor(baseService?: MetingService);
    /**
     * 搜索歌曲，自动增加 Miku 相关关键词
     */
    search(options: SearchOptions): Promise<any>;
    /**
     * 获取歌曲详情（包含播放链接）- 直接透传
     */
    getSongUrl(id: string, source?: string): Promise<any | undefined>;
    /**
     * 获取歌词 - 直接透传
     */
    getLyric(id: string, source?: string): Promise<any | undefined>;
}
declare const mikuMusicService: MikuMusicService;

export { type MusicTrack as M, type SearchOptions as S, type SearchResult as a, type MusicApiResponse as b, createSearchHandler as c, createSongUrlHandler as d, createLyricHandler as e, MetingService as f, MikuMusicService as g, mikuMusicService as h, musicService as m };
