package identityprovider

import (
	"context"

	"github.com/niels/banking-app/backend/internal/security"
)

type LocalProvider struct{}

func NewLocalProvider() *LocalProvider {
	return &LocalProvider{}
}

func (p *LocalProvider) StartVerification(ctx context.Context, params StartVerificationParams) (Verification, error) {
	_ = ctx
	_ = params

	id, err := security.RandomHex(16)
	if err != nil {
		return Verification{}, err
	}

	return Verification{
		Provider:               "local_identity",
		ExternalVerificationID: "local_kyc_" + id,
		Status:                 "pending",
	}, nil
}
