package custody

import "context"

type Provider interface {
	CreateWallet(ctx context.Context, params CreateWalletParams) (CreatedWallet, error)
	CreateDepositAddress(ctx context.Context, params CreateDepositAddressParams) (DepositAddress, error)
}

type CreateWalletParams struct {
	UserID string
	Name   string
}

type CreatedWallet struct {
	Provider         string
	ExternalWalletID string
}

type CreateDepositAddressParams struct {
	ExternalWalletID string
	Symbol           string
	Network          string
}

type DepositAddress struct {
	Address    string
	AddressTag string
}
