Something went wrong. Try again.
sloproxy
Something went wrong. Try again.
823 B · 29 lines
Go
at main
123456789101112131415161718192021222324252627282930package auth
import ( "context" "errors" "time"
"github.com/router-for-me/CLIProxyAPI/v7/internal/config" coreauth "github.com/router-for-me/CLIProxyAPI/v7/sdk/cliproxy/auth")
var ErrRefreshNotSupported = errors.New("cliproxy auth: refresh not supported")
// LoginOptions captures generic knobs shared across authenticators.// Provider-specific logic can inspect Metadata for extra parameters.type LoginOptions struct { NoBrowser bool ProjectID string CallbackPort int Metadata map[string]string Prompt func(prompt string) (string, error)}
// Authenticator manages login and optional refresh flows for a provider.type Authenticator interface { Provider() string Login(ctx context.Context, cfg *config.Config, opts *LoginOptions) (*coreauth.Auth, error) RefreshLead() *time.Duration}