import FatalError from '../enums/FatalError'; import HangupType from '../enums/HangupType'; /** * Дополнительное сообщение об ошибке */ export interface CustomError { vchat_detailed_api_error: VChatDetailedApiError; } interface VChatDetailedApiError { code: string; error_id: string; } /** * Сообщение о завершении звонка */ export interface HangupReasonData { message?: string; code?: number; remote?: boolean; custom_error?: CustomError; } /** * Сообщение о завершении звонка */ export default class HangupReason extends Error { /** * Текст ошибки */ readonly message: string; /** * Звонок завершился штатно */ readonly hangup: HangupType; /** * Звонок завершился с ошибкой */ readonly error: FatalError; /** * Код ошибки */ readonly code: number; /** * Звонок завершился сервером */ readonly remote: boolean; /** * Новый формат ошибок */ readonly custom_error: CustomError | null; constructor(type: HangupType | FatalError, data?: HangupReasonData); } export {};