import { Timerange } from './time_util'; import { Media_segment } from './segment'; import { AudioMaterial } from './local_materials'; import { Effect_param_instance } from '../data'; import { Audio_scene_effect_type, Tone_effect_type, Speech_to_song_type } from '../data'; export declare class AudioFade { fade_id: string; in_duration: number; out_duration: number; effect_id: any; constructor(in_duration: number, out_duration: number); export_json(): Record; } type AudioEffectCategory = "sound_effect" | "tone" | "speech_to_song"; type AudioEffectCategoryName = "场景音" | "音色" | "声音成曲"; export declare class AudioEffect { name: string; effect_id: string; resource_id: string; category_id: AudioEffectCategory; category_name: AudioEffectCategoryName; audio_adjust_params: Effect_param_instance[]; constructor(effect_meta: Audio_scene_effect_type | Tone_effect_type | Speech_to_song_type | any, params?: (number | null)[]); export_json(): Record; } export declare class AudioSegment extends Media_segment { material_instance: AudioMaterial; fade?: AudioFade; effects: AudioEffect[]; constructor(material: AudioMaterial, targetTimerange: Timerange, { sourceTimerange, speed, volume }?: { sourceTimerange?: Timerange; speed?: number; volume?: number; }); addEffect(effectType: Audio_scene_effect_type | Tone_effect_type | Speech_to_song_type | any, params?: (number | null)[]): this; addFade(inDuration: string | number, outDuration: string | number): this; addKeyframe(timeOffset: number, volume: number): this; export_json(): Record; } export {};