@timesheet/sdk
Version:
Official TypeScript SDK for the Timesheet API
22 lines • 1.56 kB
TypeScript
import type { ApiClient } from '../http';
import type { Project, ProjectCreateRequest, ProjectListParams, ProjectMember, ProjectMemberCreateRequest, ProjectMemberListParams, ProjectMemberUpdateRequest, ProjectRegistration, ProjectUpdateRequest } from '../models';
import { NavigablePage } from '../models';
import { Resource } from './Resource';
export declare class ProjectResource extends Resource {
constructor(client: ApiClient);
list(params?: ProjectListParams): Promise<NavigablePage<Project>>;
create(data: ProjectCreateRequest): Promise<Project>;
update(id: string, data: ProjectUpdateRequest): Promise<Project>;
get(id: string): Promise<Project>;
delete(id: string): Promise<void>;
search(params: ProjectListParams): Promise<NavigablePage<Project>>;
listMembers(projectId: string, params: ProjectMemberListParams): Promise<NavigablePage<ProjectMember>>;
addMember(projectId: string, data: ProjectMemberCreateRequest): Promise<ProjectMember>;
getMember(projectId: string, memberId: string): Promise<ProjectMember>;
updateMember(projectId: string, memberId: string, data: ProjectMemberUpdateRequest): Promise<ProjectMember>;
updateMembers(projectId: string, registrations: ProjectRegistration[]): Promise<void>;
removeMember(projectId: string, memberId: string): Promise<void>;
batchAddMembers(projectId: string, members: ProjectMemberCreateRequest[]): Promise<void>;
batchRemoveMembers(projectId: string, memberIds: string[]): Promise<void>;
}
//# sourceMappingURL=ProjectResource.d.ts.map