import { CliSshService } from './cli-ssh.service';
export type SystemAppKey = 'fluiApi' | 'fluiWeb' | 'zitadel' | 'grafana' | 'prometheus' | 'loki';
export interface EndpointInfo {
    fqdn: string | null;
    defaultUrl: string;
    effectiveUrl: string;
    synced: boolean;
}
export interface SystemEndpoints {
    fluiApi: EndpointInfo;
    fluiWeb: EndpointInfo;
    zitadel: EndpointInfo;
    grafana: EndpointInfo;
    prometheus: EndpointInfo;
    loki: EndpointInfo;
    authMode: string;
    oidcIssuer: string;
    oidcJwksUri: string;
    oidcAudience: string;
    /** Public OIDC client ID consumed by the dashboard (flui-web-config ConfigMap). */
    oidcClientId: string;
}
export declare class CliEndpointResolverService {
    private readonly sshService;
    private readonly logger;
    constructor(sshService: CliSshService);
    resolveEndpoints(masterIp: string, nipHostnameToken?: string | null): Promise<SystemEndpoints>;
    private fetchSnapshot;
    private resolveApp;
    private findIngressMatch;
    private findIngressRouteMatch;
    private extractHostFromIngressRoute;
}
