zklogin-plus
Version:
A powerful zkLogin plugin for Sui blockchain - inspired by @mysten/enoki
47 lines • 1.36 kB
TypeScript
import type { OAuthProviderConfig, ZkLoginProvider } from '../types';
/**
* OAuth提供商配置
*/
export declare const OAUTH_PROVIDERS: Record<ZkLoginProvider, Partial<OAuthProviderConfig>>;
/**
* OAuth提供商类
*/
export declare class OAuthProvider {
private provider;
private config;
constructor(provider: ZkLoginProvider, clientId: string, redirectUri: string, customConfig?: Partial<OAuthProviderConfig>);
/**
* 构建认证URL
*/
buildAuthUrl(nonce: string, state?: string): string;
/**
* 重定向到认证页面
*/
redirect(nonce: string, state?: string): void;
/**
* 获取提供商名称
*/
getProviderName(): string;
/**
* 获取配置
*/
getConfig(): OAuthProviderConfig;
}
/**
* 创建提供商实例的工厂函数
*/
export declare function createOAuthProvider(provider: ZkLoginProvider, clientId: string, redirectUri: string, customConfig?: Partial<OAuthProviderConfig>): OAuthProvider;
/**
* 从URL中解析OAuth回调参数
*/
export declare function parseOAuthCallback(url?: string): {
id_token?: string;
access_token?: string;
state?: string;
error?: string;
};
/**
* 验证OAuth回调
*/
export declare function validateOAuthCallback(params: ReturnType<typeof parseOAuthCallback>): void;
//# sourceMappingURL=index.d.ts.map