/* * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. * @generated-id: fdca6be3a48d */ import { clientDocumentsRetrieve } from "../funcs/clientDocumentsRetrieve.js"; import { clientDocumentsRetrieveByFacets } from "../funcs/clientDocumentsRetrieveByFacets.js"; import { clientDocumentsRetrievePermissions } from "../funcs/clientDocumentsRetrievePermissions.js"; import { clientDocumentsSummarize } from "../funcs/clientDocumentsSummarize.js"; import { ClientSDK, RequestOptions } from "../lib/sdks.js"; import * as components from "../models/components/index.js"; import { unwrapAsync } from "../types/fp.js"; export class ClientDocuments extends ClientSDK { /** * Read document permissions * * @remarks * Read the emails of all users who have access to the given document. */ async retrievePermissions( getDocPermissionsRequest: components.GetDocPermissionsRequest, locale?: string | undefined, options?: RequestOptions, ): Promise { return unwrapAsync(clientDocumentsRetrievePermissions( this, getDocPermissionsRequest, locale, options, )); } /** * Read documents * * @remarks * Read the documents including metadata (does not include enhanced metadata via `/documentmetadata`) for the given list of Glean Document IDs or URLs specified in the request. */ async retrieve( getDocumentsRequest?: components.GetDocumentsRequest | undefined, locale?: string | undefined, options?: RequestOptions, ): Promise { return unwrapAsync(clientDocumentsRetrieve( this, getDocumentsRequest, locale, options, )); } /** * Read documents by facets * * @remarks * Read the documents including metadata (does not include enhanced metadata via `/documentmetadata`) macthing the given facet conditions. */ async retrieveByFacets( getDocumentsByFacetsRequest?: | components.GetDocumentsByFacetsRequest | undefined, locale?: string | undefined, options?: RequestOptions, ): Promise { return unwrapAsync(clientDocumentsRetrieveByFacets( this, getDocumentsByFacetsRequest, locale, options, )); } /** * Summarize documents * * @remarks * Generate an AI summary of the requested documents. */ async summarize( summarizeRequest: components.SummarizeRequest, locale?: string | undefined, options?: RequestOptions, ): Promise { return unwrapAsync(clientDocumentsSummarize( this, summarizeRequest, locale, options, )); } }