fosrl.pangolin/server/traefik-config-provider/configSchema.ts

53 lines
812 B
TypeScript
Raw Normal View History

2024-09-28 22:50:10 -04:00
export type DynamicTraefikConfig = {
http: Http;
};
export type Http = {
routers: Routers;
services: Services;
middlewares: Middlewares;
};
export type Routers = {
[key: string]: Router;
};
export type Router = {
entryPoints: string[];
middlewares: string[];
service: string;
rule: string;
};
export type Services = {
[key: string]: Service;
};
export type Service = {
loadBalancer: LoadBalancer;
};
export type LoadBalancer = {
servers: Server[];
};
export type Server = {
url: string;
};
export type Middlewares = {
[key: string]: MiddlewarePlugin;
};
export type MiddlewarePlugin = {
plugin: Plugin;
};
export type Plugin = {
[key: string]: MiddlewarePluginConfig;
};
export type MiddlewarePluginConfig = {
[key: string]: any;
};