import type { _NSCopying } from "../Foundation/NSCopying.js";
import type { _NSDate } from "../Foundation/NSDate.js";
import type { _NSObject } from "../Foundation/NSObject.js";
import type { _NSSecureCoding } from "../Foundation/NSSecureCoding.js";
import type { _NSString } from "../Foundation/NSString.js";
import type { _SRAudioLevel } from "./SRAudioLevel.js";
import type { _SRSpeechExpression } from "./SRSpeechExpression.js";
import type { _SFSpeechRecognitionResult } from "../Speech/SFSpeechRecognitionResult.js";
import type { _SNClassificationResult } from "../SoundAnalysis/SNClassificationResult.js";
import type { SRSpeechMetricsSessionFlags } from "./SRSpeechMetricsSessionFlags.js";
export declare class _SRSpeechMetrics extends _NSObject {
    static alloc(): _SRSpeechMetrics;
    static new(): _SRSpeechMetrics;
    init(): _SRSpeechMetrics;
    /** Identifier of an audio session e.g., a Phone call or Siri utterance */
    sessionIdentifier(): _NSString;
    sessionFlags(): SRSpeechMetricsSessionFlags;
    /** The wall time when this sample was generated */
    timestamp(): _NSDate;
    /**
     * The number of seconds since the start of the audio stream When an audio stream like a phone call starts, samples are collected periodically. This field can be used to determine where each sample falls in the audio stream
     */
    timeSinceAudioStart(): number;
    audioLevel(): _SRAudioLevel | null;
    speechRecognition(): _SFSpeechRecognitionResult | null;
    soundClassification(): _SNClassificationResult | null;
    speechExpression(): _SRSpeechExpression | null;
}
export interface _SRSpeechMetrics extends _NSCopying, _NSSecureCoding {
}
