package port import "context" // VoiceFileStore manages lifecycle of voice sample files on disk. // Files are persisted until Cleanup is called after successful analysis. type VoiceFileStore interface { SaveRaw(ctx context.Context, sampleID string, data []byte) (path string, err error) SaveConverted(ctx context.Context, sampleID string, data []byte) (path string, err error) SaveVTT(ctx context.Context, sampleID string, content string) (path string, err error) Cleanup(ctx context.Context, sampleID string) error }