import { Membership } from "../types/membership"; import { Paginated } from "../types/paginated"; import { Vault } from "../types/vault"; import { Auth } from "../auth"; import { User } from "../types/user"; import { AllowedPaths, EncryptedVaultKeyPair, File, Folder } from "../types"; import { Storage } from "../types/storage"; import { ApiKey } from "../types/api-key"; import { GenerateJWTResponsePayload } from "../types/auth"; import { Collection } from "../types/collection"; import { NFT } from "../types/nft"; export declare class ApiClient { private _apiUrl; private _cdnUrl; private _auth; private _meUri; private _keysUri; private _vaultUri; private _fileUri; private _folderUri; private _trashUri; private _membershipUri; private _apiKeyUri; private _storageUri; private _subscriptionUri; private _collectionUri; private _nftUri; private _resourceId; private _name; private _status; private _vaultId; private _parentId; private _authProvider; private _redirectUri; private _refreshToken; private _authCode; private _grantType; private _encrypted; private _description; private _tags; private _keys; private _address; private _role; private _expiresAt; private _allowedStorage; private _allowedPaths; private _ownerAccess; private _numberOfChunks; private _picture; private _trashExpiration; private _publicKey; private _encPrivateKey; private _encPrivateKeyBackup; private _recipient; private _thumbnailUrl; private _projectUrl; private _creator; private _link; private _signature; private _digest; private _sdkVersion; private _clientName; private _groupId; private _httpClient; private _data; private _queryParams; private _progressId; private _progressHook; private _cancelHook; private _publicRoute; private _totalBytes; private _uploadedBytes; constructor(); clone(): ApiClient; env(config: { apiUrl: string; cdnUrl: string; }): ApiClient; auth(auth: Auth): ApiClient; resourceId(resourceId: string): ApiClient; status(status: string): ApiClient; encrypted(encrypted: boolean): ApiClient; publicRoute(publicRoute: boolean): ApiClient; keys(keys: Array): ApiClient; description(description: string): ApiClient; recipient(recipient: string): ApiClient; thumbnailUrl(thumbnailUrl: string): ApiClient; projectUrl(projectUrl: string): ApiClient; creator(creator: string): ApiClient; link(link: string): ApiClient; tags(tags: string[]): ApiClient; vaultId(vaultId: string): ApiClient; clientName(clientName: string): ApiClient; groupId(groupId: string): ApiClient; signature(signature: string): ApiClient; parentId(parentId: any): ApiClient; name(name: string): ApiClient; role(role: string): ApiClient; expiresAt(expiresAt: number): ApiClient; allowedStorage(allowedStorage: number): ApiClient; allowedPaths(allowedPaths: AllowedPaths): ApiClient; picture(picture: string): ApiClient; trashExpiration(trashExpiration: number): ApiClient; publicKey(publicKey: string): ApiClient; encPrivateKey(encPrivateKey: string): ApiClient; encPrivateKeyBackup(encPrivateKeyBackup: string): ApiClient; ownerAccess(ownerAccess: string): ApiClient; authProvider(authProvider: string): ApiClient; redirectUri(redirectUri: string): ApiClient; refreshToken(refreshToken: string): ApiClient; authCode(authCode: string): ApiClient; grantType(grantType: string): ApiClient; address(address: string): ApiClient; digest(digest: string): ApiClient; data(data: any): ApiClient; queryParams(queryParams: any): ApiClient; totalBytes(totalBytes: number): ApiClient; loadedBytes(uploadedBytes: number): ApiClient; progressHook(hook: (percentageProgress: number, bytesProgress?: number, id?: string) => void, id?: string): ApiClient; cancelHook(hook: AbortController): ApiClient; numberOfChunks(numberOfChunks: number): ApiClient; /** * Fetch currently authenticated user * @returns {Promise} */ getMe(): Promise; verifyMe(): Promise; /** * Update currently authenticated user * @uses: * - name() * - picture() * - encPrivateKey() * - encPrivateKeyBackup() * @returns {Promise} */ updateMe(): Promise; /** * Create user encryption keys backup * @uses: * - publicKey() * - encPrivateKey() * - encPrivateKeyBackup() * @returns {Promise} */ createEncryptionKeys(): Promise; /** * Update currently authenticated user encryption keys backup * @uses: * - publicKey() * - encPrivateKey() * - encPrivateKeyBackup() * @returns {Promise} */ updateEncryptionKeys(): Promise; /** * Deletes currently authenticated user encryption keys * @returns {Promise} */ deleteEncryptionKeys(): Promise; /** * * @uses: * - vaultId() * @returns {Promise>} */ getMembers(): Promise>; /** * Get memberships for currently authenticated user * @uses: * - queryParams() - limit, nextToken * @returns {Promise>} */ getMemberships(): Promise>; /** * Get vaults for currently authenticated user * @uses: * - queryParams() - status, limit, nextToken * @returns {Promise>} */ getVaults(): Promise>; /** * Get files for currently authenticated user * @uses: * - queryParams() - vaultId, parentId, status, limit, nextToken * @returns {Promise>} */ getFiles(): Promise>; /** * Get folders for currently authenticated user * @uses: * - queryParams() - status, vaultId, parentId, limit, nextToken * @returns {Promise>} */ getFolders(): Promise>; /** * Get memberships by vault id * @uses: * - vaultId() * - queryParams() - status, limit, nextToken * @returns {Promise>} */ getMembershipsByVaultId(): Promise>; /** * Get file by id * @uses: * - resourceId() * @returns {Promise} */ getFile(): Promise; /** * Get folder by id * @uses: * - resourceId() * @returns {Promise} */ getFolder(): Promise; /** * Get membership by id * @uses: * - resourceId() * @returns {Promise} */ getMembership(): Promise; /** * Get vault by id * @uses: * - resourceId() * - queryParams() - withNodes, withMemberships, withMemos, withStacks, withFolders * @returns {Promise} */ getVault(): Promise; /** * Get user api keys * @returns {Promise>} */ getApiKeys(): Promise>; /** * Generate new api key * @uses: * - resourceId() * @returns {Promise} */ generateApiKey(): Promise; /** * Revoke an existing api key * @uses: * - resourceId() * @returns {Promise} */ revokeApiKey(): Promise; /** * Get nft collections for currently authenticated user * @uses: * - queryParams() - limit, nextToken * @returns {Promise>} */ getCollections(): Promise>; /** * Get nfts for currently authenticated user * @uses: * - queryParams() - status, limit, nextToken * @returns {Promise>} */ getNfts(): Promise>; /** * Get nft by id * @uses: * - resourceId() * @returns {Promise} */ getNft(): Promise; /** * Get collection by id * @uses: * - resourceId() * @returns {Promise} */ getCollection(): Promise; /** * * @requires: * - name() * @uses: * - description() * @returns {Promise} */ mintNft(): Promise; /** * * @requires: * @uses: * - description() * @returns {Promise} */ mintCollection(): Promise; post(url: string): Promise; put(url: string): Promise; patch(url: string): Promise; get(url: string): Promise; delete(url: string): Promise; fetch(method: string, url: string): Promise; addQueryParams: (url: string, params: any) => string; /** * * @requires: * - resourceId() * @uses: * - name() * - parentId() * - status() * @returns {Promise} */ updateFile(): Promise; /** * * @requires: * - resourceId() * @returns {Promise} */ deleteFile(): Promise; /** * * @requires: * - vaultId() * - name() * @uses: * - parentId() * @returns {Promise} */ createFolder(): Promise; /** * * @requires: * - vaultId() * @uses: * - parentId() * @returns {Promise} */ createFolderTree(): Promise<{ folderIdMap: Record; }>; /** * * @requires: * - address() * @returns {Promise} */ createAuthChallenge(): Promise<{ nonce: string; }>; /** * * @requires: * - address() * - signature() * @returns {Promise} */ verifyAuthChallenge(): Promise; /** * * @requires: * - authProvider() * - grantType() * @uses: * - redirectUri() * - code() * - refreshToken() * @returns {Promise} */ generateJWT(): Promise; /** * * @requires: * - resourceId() * @uses: * - name() * - parentId() * - status() * @returns {Promise} */ updateFolder(): Promise; /** * * @requires: * - resourceId() * @returns {Promise} */ deleteFolder(): Promise; /** * * @requires: * - name() * @uses: * - description() * - encrypted() * - tags() * - keys() * @returns {Promise} */ createVault(): Promise; /** * * @requires: * - resourceId() * @uses: * - name() * - description() * - status() * @returns {Promise} */ updateVault(): Promise; /** * * @requires: * - resourceId() * @returns {Promise} */ purgeVault(): Promise; /** * * @requires: * - resourceId() * @returns {Promise} */ deleteVault(): Promise; getTrash(): Promise; emptyTrash(): Promise; /** * * @requires: * - vaultId() * - address() * - role() * @uses: * - expiresAt() * - keys() * - encPrivateKey() * - allowedStorage() * - allowedPaths() * @returns {Promise} */ createMembership(): Promise; /** * * @requires: * - resourceId() * @uses: * - role() * - expiresAt() * - status() * - keys() * @returns {Promise} */ updateMembership(): Promise; /** * * @requires: * - resourceId() * @uses: * - keys() * @returns {Promise} */ deleteMembership(): Promise; /** * * @requires: * - resourceId() * @uses: * - responseType() * - encrypted() * - progressHook() * - cancelHook() * - numberOfChunks() */ downloadFile(): Promise; getStorage(): Promise; private getCustomHeaders; } export declare function retry(fn: () => Promise, force?: boolean, retries?: number, delayMs?: number): Promise;