box-node-sdk
Version:
Official SDK for Box Platform APIs
304 lines (303 loc) • 13.8 kB
TypeScript
import { Comments } from '../schemas/comments';
import { CommentFull } from '../schemas/commentFull';
import { Authentication } from '../networking/auth';
import { NetworkSession } from '../networking/network';
import { CancellationToken } from '../internal/utils';
import { SerializedData } from '../serialization/json';
export declare class GetFileCommentsOptionals {
readonly queryParams: GetFileCommentsQueryParams;
readonly headers: GetFileCommentsHeaders;
readonly cancellationToken?: CancellationToken;
constructor(fields: Omit<GetFileCommentsOptionals, 'queryParams' | 'headers' | 'cancellationToken'> & Partial<Pick<GetFileCommentsOptionals, 'queryParams' | 'headers' | 'cancellationToken'>>);
}
export interface GetFileCommentsOptionalsInput {
readonly queryParams?: GetFileCommentsQueryParams;
readonly headers?: GetFileCommentsHeaders;
readonly cancellationToken?: CancellationToken;
}
export declare class GetCommentByIdOptionals {
readonly queryParams: GetCommentByIdQueryParams;
readonly headers: GetCommentByIdHeaders;
readonly cancellationToken?: CancellationToken;
constructor(fields: Omit<GetCommentByIdOptionals, 'queryParams' | 'headers' | 'cancellationToken'> & Partial<Pick<GetCommentByIdOptionals, 'queryParams' | 'headers' | 'cancellationToken'>>);
}
export interface GetCommentByIdOptionalsInput {
readonly queryParams?: GetCommentByIdQueryParams;
readonly headers?: GetCommentByIdHeaders;
readonly cancellationToken?: CancellationToken;
}
export declare class UpdateCommentByIdOptionals {
readonly requestBody: UpdateCommentByIdRequestBody;
readonly queryParams: UpdateCommentByIdQueryParams;
readonly headers: UpdateCommentByIdHeaders;
readonly cancellationToken?: CancellationToken;
constructor(fields: Omit<UpdateCommentByIdOptionals, 'requestBody' | 'queryParams' | 'headers' | 'cancellationToken'> & Partial<Pick<UpdateCommentByIdOptionals, 'requestBody' | 'queryParams' | 'headers' | 'cancellationToken'>>);
}
export interface UpdateCommentByIdOptionalsInput {
readonly requestBody?: UpdateCommentByIdRequestBody;
readonly queryParams?: UpdateCommentByIdQueryParams;
readonly headers?: UpdateCommentByIdHeaders;
readonly cancellationToken?: CancellationToken;
}
export declare class DeleteCommentByIdOptionals {
readonly headers: DeleteCommentByIdHeaders;
readonly cancellationToken?: CancellationToken;
constructor(fields: Omit<DeleteCommentByIdOptionals, 'headers' | 'cancellationToken'> & Partial<Pick<DeleteCommentByIdOptionals, 'headers' | 'cancellationToken'>>);
}
export interface DeleteCommentByIdOptionalsInput {
readonly headers?: DeleteCommentByIdHeaders;
readonly cancellationToken?: CancellationToken;
}
export declare class CreateCommentOptionals {
readonly queryParams: CreateCommentQueryParams;
readonly headers: CreateCommentHeaders;
readonly cancellationToken?: CancellationToken;
constructor(fields: Omit<CreateCommentOptionals, 'queryParams' | 'headers' | 'cancellationToken'> & Partial<Pick<CreateCommentOptionals, 'queryParams' | 'headers' | 'cancellationToken'>>);
}
export interface CreateCommentOptionalsInput {
readonly queryParams?: CreateCommentQueryParams;
readonly headers?: CreateCommentHeaders;
readonly cancellationToken?: CancellationToken;
}
export interface GetFileCommentsQueryParams {
/**
* A comma-separated list of attributes to include in the
* response. This can be used to request fields that are
* not normally returned in a standard response.
*
* Be aware that specifying this parameter will have the
* effect that none of the standard fields are returned in
* the response unless explicitly specified, instead only
* fields for the mini representation are returned, additional
* to the fields requested. */
readonly fields?: readonly string[];
/**
* The maximum number of items to return per page. */
readonly limit?: number;
/**
* The offset of the item at which to begin the response.
*
* Queries with offset parameter value
* exceeding 10000 will be rejected
* with a 400 response. */
readonly offset?: number;
}
export declare class GetFileCommentsHeaders {
/**
* Extra headers that will be included in the HTTP request. */
readonly extraHeaders?: {
readonly [key: string]: undefined | string;
};
constructor(fields: Omit<GetFileCommentsHeaders, 'extraHeaders'> & Partial<Pick<GetFileCommentsHeaders, 'extraHeaders'>>);
}
export interface GetFileCommentsHeadersInput {
/**
* Extra headers that will be included in the HTTP request. */
readonly extraHeaders?: {
readonly [key: string]: undefined | string;
};
}
export interface GetCommentByIdQueryParams {
/**
* A comma-separated list of attributes to include in the
* response. This can be used to request fields that are
* not normally returned in a standard response.
*
* Be aware that specifying this parameter will have the
* effect that none of the standard fields are returned in
* the response unless explicitly specified, instead only
* fields for the mini representation are returned, additional
* to the fields requested. */
readonly fields?: readonly string[];
}
export declare class GetCommentByIdHeaders {
/**
* Extra headers that will be included in the HTTP request. */
readonly extraHeaders?: {
readonly [key: string]: undefined | string;
};
constructor(fields: Omit<GetCommentByIdHeaders, 'extraHeaders'> & Partial<Pick<GetCommentByIdHeaders, 'extraHeaders'>>);
}
export interface GetCommentByIdHeadersInput {
/**
* Extra headers that will be included in the HTTP request. */
readonly extraHeaders?: {
readonly [key: string]: undefined | string;
};
}
export interface UpdateCommentByIdRequestBody {
/**
* The text of the comment to update. */
readonly message?: string;
readonly rawData?: SerializedData;
}
export interface UpdateCommentByIdQueryParams {
/**
* A comma-separated list of attributes to include in the
* response. This can be used to request fields that are
* not normally returned in a standard response.
*
* Be aware that specifying this parameter will have the
* effect that none of the standard fields are returned in
* the response unless explicitly specified, instead only
* fields for the mini representation are returned, additional
* to the fields requested. */
readonly fields?: readonly string[];
}
export declare class UpdateCommentByIdHeaders {
/**
* Extra headers that will be included in the HTTP request. */
readonly extraHeaders?: {
readonly [key: string]: undefined | string;
};
constructor(fields: Omit<UpdateCommentByIdHeaders, 'extraHeaders'> & Partial<Pick<UpdateCommentByIdHeaders, 'extraHeaders'>>);
}
export interface UpdateCommentByIdHeadersInput {
/**
* Extra headers that will be included in the HTTP request. */
readonly extraHeaders?: {
readonly [key: string]: undefined | string;
};
}
export declare class DeleteCommentByIdHeaders {
/**
* Extra headers that will be included in the HTTP request. */
readonly extraHeaders?: {
readonly [key: string]: undefined | string;
};
constructor(fields: Omit<DeleteCommentByIdHeaders, 'extraHeaders'> & Partial<Pick<DeleteCommentByIdHeaders, 'extraHeaders'>>);
}
export interface DeleteCommentByIdHeadersInput {
/**
* Extra headers that will be included in the HTTP request. */
readonly extraHeaders?: {
readonly [key: string]: undefined | string;
};
}
export type CreateCommentRequestBodyItemTypeField = 'file' | 'comment';
export interface CreateCommentRequestBodyItemField {
/**
* The ID of the item. */
readonly id: string;
/**
* The type of the item that this comment will be placed on. */
readonly type: CreateCommentRequestBodyItemTypeField;
readonly rawData?: SerializedData;
}
export interface CreateCommentRequestBody {
/**
* The text of the comment.
*
* To mention a user, use the `tagged_message`
* parameter instead. */
readonly message: string;
/**
* The text of the comment, including `@[user_id:name]`
* somewhere in the message to mention another user, which
* will send them an email notification, letting them know
* they have been mentioned.
*
* The `user_id` is the target user's ID, where the `name`
* can be any custom phrase. In the Box UI this name will
* link to the user's profile.
*
* If you are not mentioning another user, use `message`
* instead. */
readonly taggedMessage?: string;
/**
* The item to attach the comment to. */
readonly item: CreateCommentRequestBodyItemField;
readonly rawData?: SerializedData;
}
export interface CreateCommentQueryParams {
/**
* A comma-separated list of attributes to include in the
* response. This can be used to request fields that are
* not normally returned in a standard response.
*
* Be aware that specifying this parameter will have the
* effect that none of the standard fields are returned in
* the response unless explicitly specified, instead only
* fields for the mini representation are returned, additional
* to the fields requested. */
readonly fields?: readonly string[];
}
export declare class CreateCommentHeaders {
/**
* Extra headers that will be included in the HTTP request. */
readonly extraHeaders?: {
readonly [key: string]: undefined | string;
};
constructor(fields: Omit<CreateCommentHeaders, 'extraHeaders'> & Partial<Pick<CreateCommentHeaders, 'extraHeaders'>>);
}
export interface CreateCommentHeadersInput {
/**
* Extra headers that will be included in the HTTP request. */
readonly extraHeaders?: {
readonly [key: string]: undefined | string;
};
}
export declare class CommentsManager {
readonly auth?: Authentication;
readonly networkSession: NetworkSession;
constructor(fields: Omit<CommentsManager, 'networkSession' | 'getFileComments' | 'getCommentById' | 'updateCommentById' | 'deleteCommentById' | 'createComment'> & Partial<Pick<CommentsManager, 'networkSession'>>);
/**
* Retrieves a list of comments for a file.
* @param {string} fileId The unique identifier that represents a file.
The ID for any file can be determined
by visiting a file in the web application
and copying the ID from the URL. For example,
for the URL `https://*.app.box.com/files/123`
the `file_id` is `123`.
Example: "12345"
* @param {GetFileCommentsOptionalsInput} optionalsInput
* @returns {Promise<Comments>}
*/
getFileComments(fileId: string, optionalsInput?: GetFileCommentsOptionalsInput): Promise<Comments>;
/**
* Retrieves the message and metadata for a specific comment, as well
* as information on the user who created the comment.
* @param {string} commentId The ID of the comment.
Example: "12345"
* @param {GetCommentByIdOptionalsInput} optionalsInput
* @returns {Promise<CommentFull>}
*/
getCommentById(commentId: string, optionalsInput?: GetCommentByIdOptionalsInput): Promise<CommentFull>;
/**
* Update the message of a comment.
* @param {string} commentId The ID of the comment.
Example: "12345"
* @param {UpdateCommentByIdOptionalsInput} optionalsInput
* @returns {Promise<CommentFull>}
*/
updateCommentById(commentId: string, optionalsInput?: UpdateCommentByIdOptionalsInput): Promise<CommentFull>;
/**
* Permanently deletes a comment.
* @param {string} commentId The ID of the comment.
Example: "12345"
* @param {DeleteCommentByIdOptionalsInput} optionalsInput
* @returns {Promise<undefined>}
*/
deleteCommentById(commentId: string, optionalsInput?: DeleteCommentByIdOptionalsInput): Promise<undefined>;
/**
* Adds a comment by the user to a specific file, or
* as a reply to an other comment.
* @param {CreateCommentRequestBody} requestBody Request body of createComment method
* @param {CreateCommentOptionalsInput} optionalsInput
* @returns {Promise<CommentFull>}
*/
createComment(requestBody: CreateCommentRequestBody, optionalsInput?: CreateCommentOptionalsInput): Promise<CommentFull>;
}
export interface CommentsManagerInput {
readonly auth?: Authentication;
readonly networkSession?: NetworkSession;
}
export declare function serializeUpdateCommentByIdRequestBody(val: UpdateCommentByIdRequestBody): SerializedData;
export declare function deserializeUpdateCommentByIdRequestBody(val: SerializedData): UpdateCommentByIdRequestBody;
export declare function serializeCreateCommentRequestBodyItemTypeField(val: CreateCommentRequestBodyItemTypeField): SerializedData;
export declare function deserializeCreateCommentRequestBodyItemTypeField(val: SerializedData): CreateCommentRequestBodyItemTypeField;
export declare function serializeCreateCommentRequestBodyItemField(val: CreateCommentRequestBodyItemField): SerializedData;
export declare function deserializeCreateCommentRequestBodyItemField(val: SerializedData): CreateCommentRequestBodyItemField;
export declare function serializeCreateCommentRequestBody(val: CreateCommentRequestBody): SerializedData;
export declare function deserializeCreateCommentRequestBody(val: SerializedData): CreateCommentRequestBody;
//# sourceMappingURL=comments.d.ts.map