import { AuthenticationInput, AuthenticationResponse, AuthIdentityProviderService, ICacheService, Logger, OidcAuthProviderOptions } from "@medusajs/framework/types";
import { AbstractAuthModuleProvider } from "@medusajs/framework/utils";
import { OidcEngine } from "../engine";
type InjectedDependencies = {
    logger: Logger;
    cache?: ICacheService;
};
export declare class OidcAuthService extends AbstractAuthModuleProvider {
    static identifier: string;
    static DISPLAY_NAME: string;
    protected readonly config_: OidcAuthProviderOptions;
    protected readonly logger_: Logger;
    protected readonly engine_: OidcEngine;
    static validateOptions(options: OidcAuthProviderOptions): void;
    constructor({ logger, cache }: InjectedDependencies, options: OidcAuthProviderOptions);
    get displayName(): string;
    register(_: AuthenticationInput): Promise<AuthenticationResponse>;
    authenticate(req: AuthenticationInput, authIdentityService: AuthIdentityProviderService): Promise<AuthenticationResponse>;
    validateCallback(req: AuthenticationInput, authIdentityService: AuthIdentityProviderService): Promise<AuthenticationResponse>;
}
export {};
//# sourceMappingURL=oidc.d.ts.map