UNPKG

projectmanager-sdk

Version:

Software development kit for the ProjectManager.com API. for TypeScript

120 lines (119 loc) 5.96 kB
/** * ProjectManager API for TypeScript * * (c) ProjectManager.com, Inc. * * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. * * @author ProjectManager.com <support@projectmanager.com> * @copyright ProjectManager.com, Inc. * @link https://github.com/projectmgr/projectmanager-sdk-typescript */ import { ProjectManagerClient } from "../index.js"; import { AstroResult } from "../index.js"; import { ResourceDto } from "../index.js"; import { ResourceCreateDto } from "../index.js"; import { ResourceUpdateDto } from "../index.js"; import { ResourcesDto } from "../index.js"; import { ResourcesCreateDto } from "../index.js"; export declare class ResourceClient { private readonly client; /** * Internal constructor for this client library */ constructor(client: ProjectManagerClient); /** * Create a new Resource within your Workspace. * * A Resource represents a person, material, or tool that is used within your Projects. * When you attach a Resources to more than one Task, the software will schedule the usage * of your Resource so that it is not allocated to more than one Task at the same time. * The users in your Workspace are also considered Resources. To invite a new User to your * Workspace, create a new Resource for that user. * * @param body The details for the new Resource to create */ createResource(body: ResourceCreateDto): Promise<AstroResult<ResourceDto>>; /** * Retrieve a list of Resources that match an [OData formatted query](https://www.odata.org/). * * A Resource represents a person, material, or tool that is used within your Projects. * When you attach a Resources to more than one Task, the software will schedule the usage * of your Resource so that it is not allocated to more than one Task at the same time. * The users in your Workspace are also considered Resources. To invite a new User to your * Workspace, create a new Resource for that user. * * @param top The number of records to return * @param skip Skips the given number of records and then returns $top records * @param filter Filter the expression according to oData queries * @param orderby Order collection by this field. * @param expand Include related data in the response */ queryResources(top?: number, skip?: number, filter?: string, orderby?: string, expand?: string): Promise<AstroResult<ResourceDto[]>>; /** * Updates an existing Resource based on information you provide. * * A Resource represents a person, material, or tool that is used within your Projects. * When you attach a Resources to more than one Task, the software will schedule the usage * of your Resource so that it is not allocated to more than one Task at the same time. * The users in your Workspace are also considered Resources. To invite a new User to your * Workspace, create a new Resource for that user. * * @param resourceId The id of the resource * @param body The information to update the resource */ updateResource(resourceId: string, body: ResourceUpdateDto): Promise<AstroResult<ResourceDto>>; /** * Retrieve the Resource matching the specified unique ID. * * A Resource represents a person, material, or tool that is used within your Projects. * When you attach a Resources to more than one Task, the software will schedule the usage * of your Resource so that it is not allocated to more than one Task at the same time. * The users in your Workspace are also considered Resources. To invite a new User to your * Workspace, create a new Resource for that user. * * @param resourceId The id of the Resource */ retrieveResource(resourceId: string): Promise<AstroResult<ResourceDto>>; /** * Deletes an existing Resource based on information you provide. * * A Resource represents a person, material, or tool used within your Projects. * When you attach a Resources to more than one Task, the software will schedule the usage * of your Resource so that it is not allocated to more than one Task at the same time. * The users in your Workspace are also considered Resources. To invite a new User to your * Workspace, create a new Resource for that user. * * @param resourceId The id of the resource */ deleteResource(resourceId: string): Promise<AstroResult<ResourceDto>>; /** * Create new Resources within your Workspace. * * A Resource represents a person, material, or tool that is used within your Projects. * When you attach a Resources to more than one Task, the software will schedule the usage * of your Resource so that it is not allocated to more than one Task at the same time. * The users in your Workspace are also considered Resources. To invite a new User to your * Workspace, create a new Resource for that user. * * @param body The details for the new Resources to create */ createManyResources(body: ResourcesCreateDto): Promise<AstroResult<ResourcesDto>>; /** * Resend Invite Email to a Resource within your Workspace. * * When you create a Resource that is a person, ProjectManager sends that person an email inviting them to join * your Workspace. If that email is accidentally deleted or sent to a spam folder, you can request this email * be sent again using this API. * * @param resourceId The unique identifier of the Resource to send an invitation email */ resendInviteEmail(resourceId: string): Promise<AstroResult<object>>; /** * Get Resource Avatar * * @param resourceId The id of the resource */ getResourceAvatar(resourceId: string): Promise<AstroResult<object>>; }