typescript.services.configuration.mustache Maven / Gradle / Ivy
import type { AbstractServerConfiguration } from "./http";
import type { HttpLibrary, RequestContext } from "../http/http";
import type { Middleware } from "../middleware";
import type { AuthMethods, TokenProvider } from "../auth/auth";
import type { Configuration } from "../configuration";
export abstract class AbstractConfiguration implements Configuration {
abstract get baseServer(): AbstractServerConfiguration;
abstract get httpApi(): HttpLibrary;
abstract get middleware(): Middleware[];
abstract get authMethods(): AuthMethods;
}
export abstract class AbstractAuthMethod {
public abstract getName(): string;
public abstract applySecurityAuthentication(context: RequestContext): void | Promise;
};
export abstract class AbstractTokenProvider implements TokenProvider {
public abstract getToken(): string | Promise;
}