import { Http } from './Http.js';
import { WsClient } from './WsClient.js';
import { AuthSdk } from './AuthSdk.js';
import { FilesSdk } from './FilesSdk.js';
import { UsersSdk } from './UsersSdk.js';
import { HistorySdk } from './HistorySdk.js';
import { SharedSdk } from './SharedSdk.js';
import type { ContextListOptions } from '../events/BaseEvents.js';
import { RevisionsSdk } from './RevisionsSdk.js';
import { TrashSdk } from './TrashSdk.js';
import { ProjectExecutionSdk } from './ProjectExecutionsSdk.js';
import { OrganizationsSdk } from './OrganizationsSdk.js';
import { DataCatalogSdk } from './DataCatalogSdk.js';
import { GroupsSdk } from './GroupsSdk.js';
declare const baseUriSymbol: unique symbol;
/**
 * NodeJS API for API Client's net-store module.
 */
export declare abstract class Sdk {
    #private;
    basePath?: string | undefined;
    /**
     * The token to use with requests. Can be overwritten
     * with each API call by providing custom token.
     */
    get token(): string | undefined;
    set token(value: string | undefined);
    /**
     * The user authentication features.
     */
    auth: AuthSdk;
    /**
     * The user files features.
     */
    files: FilesSdk;
    /**
     * @deprecated Use `files` instead.
     */
    file: FilesSdk;
    /**
     * User management features.
     */
    users: UsersSdk;
    /**
     * @deprecated Use `users` instead.
     */
    user: UsersSdk;
    /**
     * The HTTP(S) requests.
     */
    abstract http: Http;
    /**
     * The web socket requests.
     */
    abstract ws: WsClient;
    /**
     * The history data.
     */
    history: HistorySdk;
    /**
     * The shared data.
     */
    shared: SharedSdk;
    revisions: RevisionsSdk;
    trash: TrashSdk;
    projectExecution: ProjectExecutionSdk;
    organizations: OrganizationsSdk;
    dataCatalog: DataCatalogSdk;
    groups: GroupsSdk;
    /**
     * When set it limits log output to minimum.
     */
    silent: boolean;
    [baseUriSymbol]: string;
    /**
     * @returns The base URI to the store.
     */
    get baseUri(): string;
    /**
     * @param value The base URI to the store.
     */
    set baseUri(value: string);
    /**
     * @param baseUri The base URI to the store.
     * @param basePath The base path (the router prefix) for the server.
     */
    constructor(baseUri: string, basePath?: string | undefined);
    /**
     * Creates a full URL for a path.
     * This adds the server's base path and the passed path to the configured base URL.
     * @param path The path to the endpoint, without the base path.
     */
    getUrl(path?: string): URL;
    /**
     * Appends list options to the query parameters.
     * @param url The URL object to the API endpoint
     * @param options The list options, if any
     */
    appendListOptions(url: URL, options?: ContextListOptions): void;
}
export {};
//# sourceMappingURL=Sdk.d.ts.map