import { IConnection, IOptions } from "../../../../connection.ts";
import { Service } from "../../../../espConnection.ts";
type unsignedInt = number;
export declare namespace WsResources {
    interface WsResourcesPingRequest {
    }
    interface WsResourcesPingResponse {
    }
    interface ServiceQueryRequest {
        Type?: string;
        Name?: string;
    }
    interface Exception {
        Code: string;
        Audience: string;
        Source: string;
        Message: string;
    }
    interface Exceptions {
        Source: string;
        Exception: Exception[];
    }
    interface Service {
        Name: string;
        Type: string;
        Port: unsignedInt;
        TLSSecure: boolean;
    }
    interface Services {
        Service: Service[];
    }
    interface ServiceQueryResponse {
        Exceptions: {
            Source: string;
            Exception: Exception[];
        };
        Services: {
            Service: Service[];
        };
    }
    interface WebLinksQueryRequest {
    }
    interface NamedValue {
        Name: string;
        Value: string;
    }
    interface Annotations {
        NamedValue: NamedValue[];
    }
    interface DiscoveredWebLink {
        ServiceName: string;
        NameSpace: string;
        Annotations: {
            NamedValue: NamedValue[];
        };
    }
    interface DiscoveredWebLinks {
        DiscoveredWebLink: DiscoveredWebLink[];
    }
    interface ConfiguredWebLink {
        Name: string;
        Description: string;
        URL: string;
    }
    interface ConfiguredWebLinks {
        ConfiguredWebLink: ConfiguredWebLink[];
    }
    interface WebLinksQueryResponse {
        Exceptions: Exceptions;
        DiscoveredWebLinks: {
            DiscoveredWebLink: DiscoveredWebLink[];
        };
        ConfiguredWebLinks: {
            ConfiguredWebLink: ConfiguredWebLink[];
        };
    }
}
export declare class ResourcesServiceBase extends Service {
    constructor(optsConnection: IOptions | IConnection);
    Ping(request: WsResources.WsResourcesPingRequest): Promise<WsResources.WsResourcesPingResponse>;
    ServiceQuery(request: WsResources.ServiceQueryRequest): Promise<WsResources.ServiceQueryResponse>;
    WebLinksQuery(request: WsResources.WebLinksQueryRequest): Promise<WsResources.WebLinksQueryResponse>;
}
export {};
