import { RequestProxyType } from './request/index.type'; export * from './request/index.type'; export declare type Maybe = T | null; export declare type Exact = { [K in keyof T]: T[K]; }; /** All built-in and custom scalars, mapped to their actual values */ export declare type Scalars = { ID: string; String: string; Boolean: boolean; Int: number; Float: number; Object: any; }; export interface AuthStorageProxyType { setAuth(auth: AuthTokens): void; getAuth(): AuthTokens; clearAuth(): void; getToken(): string | null; getUser(): JWTIDToken; setUser(user: JWTIDToken): void; clearUser(): void; clear(): void; } interface CreateRequestType { createRequest(authStorage: AuthStorageProxyType): RequestProxyType; } interface CreateAuthLocalType { createAuthLocal(): AuthStorageProxyType; } export interface BaseClientProps { clientId: string; userDomain: string; requestProxy?: CreateRequestType; authStorageProxy?: CreateAuthLocalType; } export declare type CommonMessage = { /** 可读的接口响应说明,请以业务状态码 code 作为判断业务是否成功的标志 */ message?: Maybe; /** * 业务状态码(与 HTTP 响应码不同) */ code?: Maybe; }; export interface WXAppletClientProps extends BaseClientProps { sourceId?: string[]; } export interface SpaClientProps extends BaseClientProps { clientSecret?: string; contentType?: string; location: Location; redirectUri?: string; scopes: string[]; autoRefresh?: boolean; refreshSlack?: number; } export interface AuthTokens { id_token: string; access_token: string; refresh_token: string; expires_in: number; expires_at?: number; token_type: string; } export interface JWTIDToken { given_name: string; family_name: string; name: string; email: string; userName: string; sub: string; } export interface TokenRequestBody { clientId: string; grantType: string; redirectUri?: string; refresh_token?: string; clientSecret?: string; code?: string; codeVerifier?: string; }