@crowdin/crowdin-api-client
Version:
JavaScript library for Crowdin API
92 lines (91 loc) • 4.23 kB
TypeScript
import { CrowdinApi, PaginationOptions, PatchRequest, ResponseList, ResponseObject } from '../core';
import { ScreenshotsModel } from '../screenshots';
import { SourceStringsModel } from '../sourceStrings';
export declare class Labels extends CrowdinApi {
/**
* @param projectId project identifier
* @param options optional pagination parameters for the request
* @see https://developer.crowdin.com/api/v2/#operation/api.projects.labels.getMany
*/
listLabels(projectId: number, options?: LabelsModel.ListLabelsParams): Promise<ResponseList<LabelsModel.Label>>;
/**
* @param projectId project identifier
* @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.projects.labels.getMany
*/
listLabels(projectId: number, limit?: number, offset?: number): Promise<ResponseList<LabelsModel.Label>>;
/**
* @param projectId project identifier
* @param request request body
* @see https://developer.crowdin.com/api/v2/#operation/api.projects.labels.post
*/
addLabel(projectId: number, request: LabelsModel.AddLabelRequest): Promise<ResponseObject<LabelsModel.Label>>;
/**
* @param projectId project identifier
* @param labelId label identifier
* @see https://developer.crowdin.com/api/v2/#operation/api.projects.labels.get
*/
getLabel(projectId: number, labelId: number): Promise<ResponseObject<LabelsModel.Label>>;
/**
* @param projectId project identifier
* @param labelId label identifier
* @see https://developer.crowdin.com/api/v2/#operation/api.projects.labels.delete
*/
deleteLabel(projectId: number, labelId: number): Promise<void>;
/**
* @param projectId project identifier
* @param labelId label identifier
* @param request request body
* @see https://developer.crowdin.com/api/v2/#operation/api.projects.labels.patch
*/
editLabel(projectId: number, labelId: number, request: PatchRequest[]): Promise<ResponseObject<LabelsModel.Label>>;
/**
* @param projectId project identifier
* @param labelId label identifier
* @param request request body
* @see https://developer.crowdin.com/api/v2/#operation/api.projects.labels.screenshots.post
*/
assignLabelToScreenshots(projectId: number, labelId: number, request: LabelsModel.AssignLabelToScreenshotsRequet): Promise<ResponseList<ScreenshotsModel.Screenshot>>;
/**
* @param projectId project identifier
* @param labelId label identifier
* @param screenshotIds screenshot identifiers
* @see https://developer.crowdin.com/api/v2/#operation/api.projects.labels.screenshots.deleteMany
*/
unassignLabelFromScreenshots(projectId: number, labelId: number, screenshotIds: string): Promise<ResponseList<ScreenshotsModel.Screenshot>>;
/**
* @param projectId project identifier
* @param labelId label identifier
* @param request request body
* @see https://developer.crowdin.com/api/v2/#operation/api.projects.labels.strings.post
*/
assignLabelToString(projectId: number, labelId: number, request: LabelsModel.AssignLabelToStringsRequet): Promise<ResponseList<SourceStringsModel.String>>;
/**
* @param projectId project identifier
* @param labelId label identifier
* @param stringIds string identifiers
* @see https://developer.crowdin.com/api/v2/#operation/api.projects.labels.strings.deleteMany
*/
unassignLabelFromString(projectId: number, labelId: number, stringIds: string): Promise<ResponseList<SourceStringsModel.String>>;
}
export declare namespace LabelsModel {
interface ListLabelsParams extends PaginationOptions {
orderBy?: string;
}
interface Label {
id: number;
title: string;
isSystem?: boolean;
}
interface AddLabelRequest {
title: string;
}
interface AssignLabelToStringsRequet {
stringIds: number[];
}
interface AssignLabelToScreenshotsRequet {
screenshotIds: number[];
}
}