@lokalise/node-api
Version:
Official Lokalise API 2.0 Node.js client
58 lines (49 loc) • 1.45 kB
text/typescript
import { OtaFreezePeriod } from "../models/ota/ota_freeze_period.js";
import type {
OtaFreezePeriodParams,
OtaResourceDeleted,
OtaTeamProject,
OtaTeamProjectFramework,
} from "../types/ota.js";
import { OtaCollection } from "./ota_collection.js";
export class OtaFreezePeriods extends OtaCollection<OtaFreezePeriod> {
protected static override prefixURI =
"teams/{!:teamId}/projects/{!:lokaliseProjectId}/bundle-freezes/{:id}";
protected get elementClass(): new (
json: Record<string, unknown>,
) => OtaFreezePeriod {
return OtaFreezePeriod;
}
protected override get rootElementName(): string {
return "data";
}
protected override get rootElementNameSingular(): string | null {
return "data";
}
list(requestParams: OtaTeamProjectFramework): Promise<OtaFreezePeriod[]> {
return this.doList(requestParams) as Promise<OtaFreezePeriod[]>;
}
create(
freezeParams: OtaFreezePeriodParams,
requestParams: OtaTeamProject,
): Promise<OtaFreezePeriod> {
return this.doCreate(
freezeParams,
requestParams,
this.populateObjectFromJsonRoot,
);
}
update(
freezeId: string | number,
freezeParams: OtaFreezePeriodParams,
requestParams: OtaTeamProject,
): Promise<OtaFreezePeriod> {
return this.doUpdate(freezeId, freezeParams, requestParams);
}
delete(
freezeId: string | number,
requestParams: OtaTeamProject,
): Promise<OtaResourceDeleted> {
return this.doDelete(freezeId, requestParams);
}
}