import "./_dnt.polyfills.js";
import { RawAuth } from "./typegraph.js";
import { type Auth as Auth_ } from "./wit.js";
import type * as t from "./types.js";
export type StdOauth2Profiler = {
    profiler: "default";
} | {
    profiler: "none";
} | {
    profiler: "extended";
    extension: any;
} | {
    profiler: "custom";
    id: number;
};
export declare function noProfiler(): StdOauth2Profiler;
export declare function defaultProfiler(): StdOauth2Profiler;
export declare function extendedProfiler(extension: any): StdOauth2Profiler;
export declare function customProfiler(func: t.Typedef): StdOauth2Profiler;
export declare class Auth {
    static jwt(name: string, format: string, algorithmParams?: object): Auth_;
    static hmac256(name: string): Auth_;
    static basic(users: string[]): Auth_;
    private static stdOauth2;
    static oauth2Digitalocean(scopes: string, profiler?: StdOauth2Profiler): RawAuth;
    static oauth2Discord(scopes: string, profiler?: StdOauth2Profiler): RawAuth;
    static oauth2Dropbox(scopes: string, profiler?: StdOauth2Profiler): RawAuth;
    static oauth2Facebook(scopes: string, profiler?: StdOauth2Profiler): RawAuth;
    static oauth2Github(scopes: string, profiler?: StdOauth2Profiler): RawAuth;
    static oauth2Gitlab(scopes: string, profiler?: StdOauth2Profiler): RawAuth;
    static oauth2Google(scopes: string, profiler?: StdOauth2Profiler): RawAuth;
    static oauth2Instagram(scopes: string, profiler?: StdOauth2Profiler): RawAuth;
    static oauth2Linkedin(scopes: string, profiler?: StdOauth2Profiler): RawAuth;
    static oauth2Microsoft(scopes: string, profiler?: StdOauth2Profiler): RawAuth;
    static oauth2Reddit(scopes: string, profiler?: StdOauth2Profiler): RawAuth;
    static oauth2Slack(scopes: string, profiler?: StdOauth2Profiler): RawAuth;
    static oauth2Stackexchange(scopes: string, profiler?: StdOauth2Profiler): RawAuth;
    static oauth2Twitter(scopes: string, profiler?: StdOauth2Profiler): RawAuth;
}
