import * as hono_utils_jwt_types from 'hono/utils/jwt/types'; import { Provider } from './provider.js'; import { Oauth2WrappedConfig, Oauth2Token } from './oauth2.js'; import { OidcWrappedConfig } from './oidc.js'; import 'hono'; import '../storage/storage.js'; interface MicrosoftConfig extends Oauth2WrappedConfig { /** * The tenant ID of the Microsoft account. * * This is usually the same as the client ID. * * @example * ```ts * { * tenant: "1234567890" * } * ``` */ tenant: string; } interface MicrosoftOidcConfig extends OidcWrappedConfig { } /** * Create a Microsoft OAuth2 provider. * * @param config - The config for the provider. * @example * ```ts * MicrosoftProvider({ * tenant: "1234567890", * clientID: "1234567890", * clientSecret: "0987654321" * }) * ``` */ declare function MicrosoftProvider(config: MicrosoftConfig): Provider<{ tokenset: Oauth2Token; clientID: string; }>; /** * Create a Microsoft OIDC provider. * * This is useful if you just want to verify the user's email address. * * @param config - The config for the provider. * @example * ```ts * MicrosoftOidcProvider({ * clientID: "1234567890" * }) * ``` */ declare function MicrosoftOidcProvider(config: MicrosoftOidcConfig): Provider<{ id: hono_utils_jwt_types.JWTPayload; clientID: string; }>; export { type MicrosoftConfig, type MicrosoftOidcConfig, MicrosoftOidcProvider, MicrosoftProvider };