import type { Auth } from "../auth"; import type { CallbackResult } from "../types"; export interface ProviderConfig { id?: string; profile?: (profile: any, account: any) => any | Promise; } export declare abstract class Provider { protected readonly config: T; id: string; constructor(config: T); getUri(svelteKitAuth: Auth, path: string, host?: string): string; getCallbackUri(svelteKitAuth: Auth, host?: string): string; getSigninUri(svelteKitAuth: Auth, host?: string): string; abstract signin = Record, Body = unknown>(request: any, svelteKitAuth: Auth): any; abstract callback = Record, Body = unknown>(request: any, svelteKitAuth: Auth): CallbackResult | Promise; }