mirror of
https://github.com/CherryHQ/cherry-studio.git
synced 2025-12-26 11:44:28 +08:00
27 lines
823 B
TypeScript
27 lines
823 B
TypeScript
import { FileMetadata, OcrProvider as Provider } from '@types'
|
||
|
||
import BaseOcrProvider from './BaseOcrProvider'
|
||
import OcrProviderFactory from './OcrProviderFactory'
|
||
|
||
export default class OcrProvider {
|
||
private sdk: BaseOcrProvider
|
||
constructor(provider: Provider) {
|
||
this.sdk = OcrProviderFactory.create(provider)
|
||
}
|
||
public async parseFile(
|
||
sourceId: string,
|
||
file: FileMetadata
|
||
): Promise<{ processedFile: FileMetadata; quota?: number }> {
|
||
return this.sdk.parseFile(sourceId, file)
|
||
}
|
||
|
||
/**
|
||
* 检查文件是否已经被预处理过
|
||
* @param file 文件信息
|
||
* @returns 如果已处理返回处理后的文件信息,否则返回null
|
||
*/
|
||
public async checkIfAlreadyProcessed(file: FileMetadata): Promise<FileMetadata | null> {
|
||
return this.sdk.checkIfAlreadyProcessed(file)
|
||
}
|
||
}
|