import { CrowdinApi, PaginationOptions, PatchRequest, ResponseList, ResponseObject } from '../core'; /** * Crowdin supports more than 300 world languages and custom languages created in the system. * * Use API to get the list of all supported languages and retrieve additional details (e.g. text direction, internal code) on specific language. */ export declare class Languages extends CrowdinApi { /** * @requiredScope none * @param options optional pagination parameters for the request * @see https://developer.crowdin.com/api/v2/#operation/api.languages.getMany */ listSupportedLanguages(options?: PaginationOptions): Promise>; /** * @requiredScope none * @param limit maximum number of items to retrieve (default 25) * @param offset starting offset in the collection (default 0) * @deprecated optional parameters should be passed through an object * @see https://developer.crowdin.com/api/v2/#operation/api.languages.getMany */ listSupportedLanguages(limit?: number, offset?: number): Promise>; /** * @requiredScope language:write * @param request request body * @see https://developer.crowdin.com/api/v2/#operation/api.languages.post */ addCustomLanguage(request: LanguagesModel.AddLanguageRequest): Promise>; /** * @requiredScope none * @param languageId language identifier * @see https://developer.crowdin.com/api/v2/#operation/api.languages.get */ getLanguage(languageId: string): Promise>; /** * @requiredScope language:write * @param languageId language identifier * @see https://developer.crowdin.com/api/v2/#operation/api.languages.delete */ deleteCustomLanguage(languageId: string): Promise; /** * @requiredScope language:write * @param languageId language identifier * @param request request body * @see https://developer.crowdin.com/api/v2/#operation/api.languages.patch */ editCustomLanguage(languageId: string, request: PatchRequest[]): Promise>; } export declare namespace LanguagesModel { interface Language { id: string; name: string; editorCode: string; twoLettersCode: string; threeLettersCode: string; locale: string; androidCode: string; bcp47Code: string; osxCode: string; osxLocale: string; pluralCategoryNames: string[]; pluralRules: string; pluralExamples: string[]; textDirection: TextDirection; dialectOf: string | null; } interface AddLanguageRequest { name: string; code: string; localeCode: string; textDirection: TextDirection; pluralCategoryNames: string[]; threeLettersCode: string; twoLettersCode?: string; dialectOf?: string; } type TextDirection = 'ltr' | 'rtl'; }