import { Api } from "./api"; import { Membership } from "../types/membership"; import { Vault } from "../types/vault"; import { CreateFolderTreeTxPayload, CreateFolderTxPayload, CreateMembershipTxPayload, CreateVaultTxPayload, UpdateFileTxPayload, UpdateFolderTxPayload, UpdateMembershipTxPayload, UpdateVaultTxPayload } from "../types/transaction"; import { Paginated } from "../types/paginated"; import { ListApiOptions, ListOptions, VaultApiGetOptions } from "../types/query-options"; import { User, UserEncryptionKeys, UserMutable } from "../types/user"; import { FileGetOptions } from "../core/file"; import { File, Folder } from "../types"; import { Storage } from "../types/storage"; import { ApiKey } from "../types/api-key"; import { CreateChallengeRequestPayload, GenerateJWTRequestPayload, GenerateJWTResponsePayload, VerifyChallengeRequestPayload } from "../types/auth"; import { Auth } from "../auth"; import { ApiConfig } from "../config"; import { Collection } from "../types/collection"; import { NFT } from "../types/nft"; import { CollectionMetadata, NFTMetadata } from "../core/nft"; export declare const defaultFileUploadOptions: { encrypted: boolean; }; export default class TuskyApi extends Api { protected auth: Auth; constructor(config: ApiConfig); generateJWT(payload: GenerateJWTRequestPayload): Promise; createAuthChallenge(payload: CreateChallengeRequestPayload): Promise<{ nonce: string; }>; verifyAuthChallenge(payload: VerifyChallengeRequestPayload): Promise; createFolder(tx: CreateFolderTxPayload): Promise; createFolderTree(tx: CreateFolderTreeTxPayload): Promise<{ folderIdMap: Record; }>; updateFolder(tx: UpdateFolderTxPayload): Promise; deleteFolder(id: string): Promise; updateFile(tx: UpdateFileTxPayload): Promise; deleteFile(id: string): Promise; createVault(tx: CreateVaultTxPayload): Promise; updateVault(tx: UpdateVaultTxPayload): Promise; purgeVault(id: string): Promise; deleteVault(id: string): Promise; getTrash(): Promise; emptyTrash(): Promise; createMembership(tx: CreateMembershipTxPayload): Promise; updateMembership(tx: UpdateMembershipTxPayload): Promise; deleteMembership(tx: UpdateMembershipTxPayload): Promise; getMembers(options?: ListApiOptions): Promise>; downloadFile(id: string, options?: FileGetOptions): Promise<{ data: ArrayBuffer | ReadableStream; headers: Headers; }>; getStorage(): Promise; getMe(): Promise; updateMe(input: UserMutable): Promise; verifyMe(): Promise; createEncryptionKeys(input: UserEncryptionKeys): Promise; updateEncryptionKeys(input: UserEncryptionKeys): Promise; deleteEncryptionKeys(): Promise; getFile(id: string): Promise; getFolder(id: string): Promise; getMembership(id: string): Promise; getVault(id: string, options?: VaultApiGetOptions): Promise; getVaults(options?: ListOptions): Promise>; getFiles(options?: ListApiOptions & { uploadId?: string; }): Promise>; getFolders(options?: ListApiOptions): Promise>; getApiKeys(): Promise>; generateApiKey(): Promise; revokeApiKey(key: string): Promise; getCollection(id: string): Promise; getNft(id: string): Promise; getNfts(options?: ListOptions): Promise>; getCollections(options?: ListOptions): Promise>; mintNft(tx: NFTMetadata): Promise; mintCollection(tx: CollectionMetadata): Promise; } export { TuskyApi };