import type { Links, PaginationLinks } from './common.types'; export interface RetentionRule { type: string; everySeconds: number; shardGroupDurationSeconds?: number; } export interface Label { id?: string; name?: string; properties?: Record; } export interface BucketLinks extends Links { labels: string; members: string; owners: string; write: string; } export interface Bucket { id?: string; orgID?: string; name: string; description?: string; retentionRules?: RetentionRule[]; createdAt?: string; updatedAt?: string; links?: BucketLinks; labels?: Label[]; } export interface BucketResponse { links: PaginationLinks; buckets: Bucket[]; } export interface BucketCreateParams { name: string; orgID: string; retentionRules?: RetentionRule[]; description?: string; }