gitfoss | 1583fa79dadd28cc5a58cab58b76c27c78f8a1ac | app/services/codeAnalysis/types.ts ∙ GitFOSS
.ts
TypeScript
(application/typescript)
// 1st-party
import type { ServiceApiContract } from "@ethicdevs/react-monolith";
// app
import type {
  LanguageDetectFn,
  LanguagesMap,
  LinguistFileInfos,
} from "../../types";

export interface CodeAnalysisServiceAPI extends ServiceApiContract {
  getLinguistFileInfos(
    path: string,
    content?: string
  ): Promise<LinguistFileInfos>;
}

export interface CodeAnalysisServiceDeps {
  extsMimeTypesMap: { [extension: string]: string };
  getFilePathExt: (path: string) => string;
  imageExts: string[];
  isImageFilePath: (path: string) => boolean;
  languageDetect: LanguageDetectFn;
  languagesMap: LanguagesMap;
}