package storage import ( "context" "io" ) type File struct { Name string ContentType string Size int64 Reader io.Reader } type StoredFile struct { Key string URL string Size int64 } type Store interface { Upload(ctx context.Context, tenantID string, file *File) (*StoredFile, error) Delete(ctx context.Context, key string) error Exists(ctx context.Context, key string) (bool, error) URL(key string) string }