next/typings/auth.d.ts

40 lines
1.3 KiB
TypeScript
Raw Permalink Normal View History

import { IUser } from "@models/user";
2023-12-29 20:53:29 -05:00
import { GetSessionFunc, SecondarySignInOptions, SessionLastRefreshedAt, SessionStatus, SignInFunc, SignOutFunc } from "@sidebase/nuxt-auth/dist/runtime/types";
import { ComputedRef, Ref } from "vue";
declare module "#auth" {
interface SessionData {
token?: string;
user?: IUser;
}
}
declare module "@sidebase/nuxt-auth/dist/runtime/types" {
interface SessionData {
token?: string;
user?: IUser;
}
declare const signIn: SignInFunc<Credentials, any>;
declare const signOut: SignOutFunc;
declare const getSession: GetSessionFunc<SessionData | null | void>;
2023-12-29 20:53:29 -05:00
declare const signUp: (credentials: Credentials, signInOptions?: SecondarySignInOptions) => Promise<any>;
type WrappedSessionData<SessionData> = Ref<SessionData | null | undefined>;
2023-12-29 20:53:29 -05:00
export interface CommonUseAuthReturn<SignIn, SignOut, GetSession, SessionData> {
data: Readonly<WrappedSessionData<SessionData>>;
lastRefreshedAt: Readonly<Ref<SessionLastRefreshedAt>>;
status: ComputedRef<SessionStatus>;
signIn: SignIn;
signOut: SignOut;
getSession: GetSession;
}
2023-12-29 20:53:29 -05:00
interface UseAuthReturn extends CommonUseAuthReturn<typeof signIn, typeof signOut, typeof getSession, SessionData> {
signUp: typeof signUp;
token: Readonly<Ref<string | null>>;
}
export declare const useAuth: () => UseAuthReturn;
}
export {};