import * as tf from '@tensorflow/tfjs'; import { ExplainedPredictionsOutput, TMType, TeachableModel } from './TeachableModel'; import { AudioExample } from './gtm-utils/recorder'; import { SpeechCommandRecognizer, SpeechCommandRecognizerMetadata, TransferLearnConfig } from './speech-commands'; export default class SpeechModel implements TeachableModel { private recognizer?; private transferRecognizer?; private metadata; protected _ready?: Promise; protected trained: boolean; protected busy: boolean; protected imageSize: number; protected _disposed: boolean; variant: TMType; explained?: HTMLCanvasElement; modelBaseUrl: string; private labels; constructor(type: TMType, metadata?: SpeechCommandRecognizerMetadata, model?: tf.io.ModelJSON, weights?: ArrayBuffer); getModel(): SpeechCommandRecognizer; getVariant(): TMType; setXAICanvas(): void; setXAIClass(): void; protected load(metadata?: SpeechCommandRecognizerMetadata, model?: tf.io.ModelJSON, weights?: ArrayBuffer): Promise; getRecognizerModel(): SpeechCommandRecognizer; countExamples(): { [word: string]: number; }; ready(): Promise; predict(input: AudioExample): Promise; train(params: TransferLearnConfig, callbacks: tf.CustomCallbackArgs): Promise; draw(image: HTMLCanvasElement): HTMLCanvasElement; estimate(image: HTMLCanvasElement): Promise; addExample(label: number, example: AudioExample): Promise; dispose(): void; setName(): void; getImageSize(): number; isTrained(): boolean; isReady(): boolean; setSeed(): void; getMetadata(): SpeechCommandRecognizerMetadata; save(handler: tf.io.IOHandler): Promise; setLabels(labels: string[]): void; getLabels(): string[]; getLabel(ix: number): string; getNumExamples(): number; getExamplesPerClass(): number[]; getNumValidation(): number; calculateAccuracy(): Promise<{ reference: any; predictions: tf.Tensor; }>; }