package sharelinks import ( "context" "galo/internal/models" ) // Repository is the persistence contract for the share-links domain. type Repository interface { Create(ctx context.Context, l *models.ShareLink) error ListByAlbum(ctx context.Context, albumID string) ([]models.ShareLink, error) GetByToken(ctx context.Context, token string) (*models.ShareLink, error) Revoke(ctx context.Context, id, albumID string) error }