@crowdin/crowdin-apps-functions
Version:
Utility library to easily and quickly develop Crowdin App
39 lines (38 loc) • 1.37 kB
TypeScript
import Crowdin, { ProjectsGroupsModel, SourceStringsModel, StringTranslationsModel, TranslationMemoryModel, GlossariesModel, ScreenshotsModel } from '@crowdin/crowdin-api-client';
interface AdditionalNodes {
otherLanguageTranslations: boolean;
glossaryTerms: boolean;
tmSuggestions: boolean;
screenshots: boolean;
}
interface StringsContextArgs {
client: Crowdin;
projectId: number;
stringIds: number[];
targetLanguagesIds: string[];
additionalNodes?: AdditionalNodes;
stringsLimit?: number;
translationsLimit?: number;
}
interface ExtendedStringNode extends SourceStringsModel.String {
translations: {
edges: {
node: StringTranslationsModel.StringTranslation;
}[];
};
}
interface TranslationMemorySuggestion extends TranslationMemoryModel.ConcordanceSearchResponse {
languageId: string;
}
interface AnnotatedScreenshot extends Partial<ScreenshotsModel.Screenshot> {
originalUrl: string;
}
interface GetStringsContextResult {
project: Partial<ProjectsGroupsModel.Project>;
strings: ExtendedStringNode[];
screenshots?: AnnotatedScreenshot[];
tmSuggestions?: TranslationMemorySuggestion[];
glossaryTerms?: GlossariesModel.ConcordanceSearchResponse[];
}
export declare function getStringsContext(args: StringsContextArgs): Promise<GetStringsContextResult>;
export {};