@jokio/sdk
Version:
pure js/ts sdk for building decentralised localfirst web apps. Provides tts ai model integrations, realtime p2p communication & crypto encryptions.
47 lines (46 loc) • 1.28 kB
TypeScript
import { StorageService } from './storage.service';
type Options = {
authUrl: string;
storage: StorageService;
};
export declare class AuthService {
private options;
get url(): string;
onUserDataUpdate?: (data: UserAuthData) => void;
isAuthenticated: Promise<void>;
private isAuthenticatedResolver;
constructor(options: Options);
init(): Promise<void>;
me(): Promise<UserAuthData>;
requestEmailLogin(email: string, returnUrl?: string): Promise<boolean>;
completeEmailLogin(email: string, otpCode: string): Promise<UserAuthData>;
requestPasskeyLogin(opts?: {
displayName?: string;
isRegistration?: boolean;
addAsAdditionalDevice?: boolean;
}): Promise<UserAuthData>;
guestLogin(): Promise<UserAuthData>;
getLastLoginData(): Promise<UserAuthData | null>;
}
export type UserAuthData = {
name: string;
email: string;
userId: string;
sessionId: string;
verified: boolean;
nats: {
bearer_token: boolean;
pub: {
allow: string[];
};
sub: {
allow: string[];
};
limits: {
max_msgs: number;
max_bytes: number;
max_msgs_per_subject: number;
};
};
};
export {};