///
///
import { SunapiClient } from '../client';
import { SunapiResponse, RecordingSchedule, RecordingSearch, RecordingFile } from '../types';
export declare class RecordingModule extends SunapiClient {
/**
* Get recording schedule for a channel
*/
getRecordingSchedule(channelId: number): Promise>;
/**
* Set recording schedule for a channel
*/
setRecordingSchedule(schedule: RecordingSchedule): Promise>;
/**
* Start manual recording
*/
startRecording(channelId: number): Promise>;
/**
* Stop manual recording
*/
stopRecording(channelId: number): Promise>;
/**
* Get recording status for all channels
*/
getRecordingStatus(): Promise>>;
/**
* Search for recorded files
*/
searchRecordings(search: RecordingSearch): Promise>;
/**
* Get recording file details
*/
getRecordingFile(fileId: string): Promise>;
/**
* Download recording file
*/
downloadRecording(fileId: string): Promise>;
/**
* Delete recording file
*/
deleteRecording(fileId: string): Promise>;
/**
* Get playback URL for a recording
*/
getPlaybackUrl(fileId: string): Promise>;
/**
* Start playback session
*/
startPlayback(fileId: string, startTime?: Date, endTime?: Date): Promise>;
/**
* Stop playback session
*/
stopPlayback(sessionId: string): Promise>;
/**
* Control playback (play, pause, seek)
*/
controlPlayback(sessionId: string, action: 'play' | 'pause' | 'seek', position?: number): Promise>;
/**
* Set playback speed
*/
setPlaybackSpeed(sessionId: string, speed: number): Promise>;
/**
* Get storage usage information
*/
getStorageUsage(): Promise>;
/**
* Set recording retention policy
*/
setRetentionPolicy(retentionDays: number, overwriteOldest?: boolean): Promise>;
/**
* Get recording retention policy
*/
getRetentionPolicy(): Promise>;
private parseRecordingSchedule;
private parseScheduleBlocks;
private parseTimeRanges;
private parseRecordingFile;
}
//# sourceMappingURL=recording.d.ts.map