import { GenerateShareLinkPayload, GetSharedDirectoryPayload, GetShareLinkFolderSizePayload, ListShareLinksResponse, ShareLink, UpdateShareLinkPayload } from './types'; import { ApiSecurity, ApiUrl, AppDetails } from '../../shared'; export * as ShareTypes from './types'; export declare class Share { private readonly client; private readonly appDetails; private readonly apiSecurity; static client(apiUrl: ApiUrl, appDetails: AppDetails, apiSecurity: ApiSecurity): Share; private constructor(); /** * Fetches the list of shared items */ getShareLinks(page?: number, perPage?: number, orderBy?: 'views:ASC' | 'views:DESC' | 'createdAt:ASC' | 'createdAt:DESC'): Promise; /** * Creates a new link to share a file or folder * @param payload */ createShareLink(payload: GenerateShareLinkPayload): Promise<{ created: boolean; token: string; code: string; }>; /** * Update share link * @param payload */ updateShareLink(payload: UpdateShareLinkPayload): Promise; /** * Delete share link by id * @param payload */ deleteShareLink(shareId: string): Promise<{ deleted: boolean; shareId: string; }>; /** * Increment share view by token * @param token */ incrementShareViewByToken(token: string): Promise<{ incremented: boolean; token: string; }>; /** * Fetches data of a shared file * @param token */ getShareLink(token: string): Promise; /** * Fetches paginated folders or files of a specific share link * @param payload */ getShareLinkDirectory(payload: GetSharedDirectoryPayload): Promise; /** * Get size of folder in share links * @param payload */ getShareLinkFolderSize(payload: GetShareLinkFolderSizePayload): Promise; /** * Returns the needed headers for the module requests * @private */ private headers; /** * Returns the needed headers for the module requests * @private */ private basicHeaders; }