package profile import ( "context" "github.com/google/uuid" ) type Repository interface { FindByID(ctx context.Context, id uuid.UUID) (*Profile, error) FindByHandle(ctx context.Context, handle string) (*Profile, error) Create(ctx context.Context, profile *Profile) error Update(ctx context.Context, profile *Profile) error Delete(ctx context.Context, profile *Profile) error FindByUserID(ctx context.Context, userId uuid.UUID) (*Profile, error) FindAll(ctx context.Context, filter Filter) ([]*Profile, int, error) }