@lokalise/node-api
Version:
Official Lokalise API 2.0 Node.js client
51 lines (42 loc) • 1.47 kB
text/typescript
import type { PaginatedResult } from "../interfaces/paginated_result.js";
import { TeamUser } from "../models/team_user.js";
import type { TeamOnly } from "../types/common_get_params.js";
import type { TeamUserDeleted, TeamUserParams } from "../types/team_users.js";
import type { TeamWithPagination } from "../types/teams.js";
import { BaseCollection } from "./base_collection.js";
export class TeamUsers extends BaseCollection<TeamUser> {
protected static override prefixURI = "teams/{!:team_id}/users/{:id}";
protected get elementClass(): new (
json: Record<string, unknown>,
) => TeamUser {
return TeamUser;
}
protected override get rootElementName(): string {
return "team_users";
}
protected override get rootElementNameSingular(): string | null {
return "team_user";
}
list(request_params: TeamWithPagination): Promise<PaginatedResult<TeamUser>> {
return this.doList(request_params) as Promise<PaginatedResult<TeamUser>>;
}
get(
team_user_id: string | number,
request_params: TeamOnly,
): Promise<TeamUser> {
return this.doGet(team_user_id, request_params);
}
update(
team_user_id: string | number,
team_user_params: TeamUserParams,
request_params: TeamOnly,
): Promise<TeamUser> {
return this.doUpdate(team_user_id, team_user_params, request_params);
}
delete(
team_user_id: string | number,
request_params: TeamOnly,
): Promise<TeamUserDeleted> {
return this.doDelete(team_user_id, request_params);
}
}