import { drive_v3 } from '@googleapis/drive'; import { PropertyService } from '@servicelabsco/nestjs-utility-services'; import { DriveResourceAccessRoleTypeEnum } from '../enums/drive.resource.access.role.type.enum'; export declare class GoogleDriveService { protected readonly propertyService: PropertyService; private driveClient; constructor(propertyService: PropertyService); getDriveClient(): Promise; grantPermission(data: { file_id: string; email: string; role: DriveResourceAccessRoleTypeEnum; send_notification?: boolean; }): Promise; updatePermission(data: { file_id: string; email: string; role: DriveResourceAccessRoleTypeEnum; }): Promise; revokePermission(data: { file_id: string; email: string; role: DriveResourceAccessRoleTypeEnum; }): Promise; listPermissions(fileId: string): Promise<{ email: string; role: string; }[]>; private extractDriveFileId; private downloadDriveFile; createDocument(params: { templateFileUrl?: string; name: string; folderId: string; mimeType?: string; }): Promise; createEmptyDocument(params: { name: string; folderId: string; mimeType?: string; }): Promise; createDriveFolder(params: { name: string; parentFolderId: string; }): Promise; exportDocumentPdf(fileId: string, name?: string): Promise<{ fieldname: string; originalname: string; encoding: string; mimetype: string; buffer: Buffer; size: number; }>; renameFile(params: { fileId: string; newName: string; }): Promise<{ id?: string | null; name?: string | null; }>; getGoogleDocsLink(fileId: string): string; extractGoogleDriveResourceId(url: string): string | null; }