UNPKG

supa-seed

Version:

A constraint-aware, framework-agnostic database seeding framework with deep PostgreSQL business logic discovery and MakerKit integration support

64 lines 2.1 kB
/** * Storage Integration Manager * Handles Supabase Storage operations, file uploads, and media record management */ import type { createClient } from '@supabase/supabase-js'; import { StorageConfig, StorageBatchUploadResult, StoragePermissionCheck, StorageQuotaInfo, StorageIntegrationResult, GeneratedImage } from './storage-types'; type SupabaseClient = ReturnType<typeof createClient>; export declare class StorageIntegrationManager { private client; private imageGenerator; private config; private uploadQueue; constructor(client: SupabaseClient, config?: Partial<StorageConfig>); /** * Main method to seed storage files for a setup */ seedWithStorageFiles(setupId: string, accountId?: string, customConfig?: Partial<StorageConfig>): Promise<StorageIntegrationResult>; /** * Upload a single image to storage */ private uploadImageToStorage; /** * Check storage permissions and RLS policies */ checkStoragePermissions(bucketName: string): Promise<StoragePermissionCheck>; /** * Get RLS policies affecting storage */ private getRLSPolicies; /** * Get storage quota information */ getStorageQuota(bucketName: string): Promise<StorageQuotaInfo>; /** * Batch upload multiple files */ batchUpload(files: GeneratedImage[], setupId: string, accountId?: string, config?: Partial<StorageConfig>): Promise<StorageBatchUploadResult>; /** * Update configuration */ updateConfig(newConfig: Partial<StorageConfig>): void; /** * Get current configuration */ getConfig(): StorageConfig; /** * Get domain-specific configuration */ static getDomainConfig(domain: string): Partial<StorageConfig>; /** * Utility methods */ private getFileExtension; private generateId; private formatFileSize; private calculateProjectedFullDate; private chunkArray; /** * Clean up resources */ cleanup(): Promise<void>; } export {}; //# sourceMappingURL=storage-integration-manager.d.ts.map