import { AmbiguousError } from './errors/ambiguous';
import { NotFound } from './errors/not-found';
import { AddOnWithRelatedData, ExtendedAddon, ExtendedAddonAttachment, Link } from './types/pg/platform-api';
import { ConnectionDetails, TunnelConfig } from './types/pg/tunnel';
import AddonResolver from './utils/addons/addon-resolver';
import { getPsqlConfigs, sshTunnel } from './utils/pg/bastion';
import { getConfigVarNameFromAttachment } from './utils/pg/config-vars';
import DatabaseResolver from './utils/pg/databases';
import getHost from './utils/pg/host';
import PsqlService from './utils/pg/psql';
import { confirm } from './ux/confirm';
import { prompt } from './ux/prompt';
import { styledHeader } from './ux/styled-header';
import { styledJSON } from './ux/styled-json';
import { styledObject } from './ux/styled-object';
import { table } from './ux/table';
import { wait } from './ux/wait';
export type { AddOnWithRelatedData, ExtendedAddon, ExtendedAddonAttachment, Link, } from './types/pg/platform-api';
export type { ConnectionDetails, TunnelConfig, } from './types/pg/tunnel';
/** @deprecated Use direct type imports instead */
export declare const types: {
    pg: {
        AddOnWithRelatedData: AddOnWithRelatedData;
        ConnectionDetails: ConnectionDetails;
        ExtendedAddon: ExtendedAddon;
        ExtendedAddonAttachment: ExtendedAddonAttachment;
        Link: Link;
        TunnelConfig: TunnelConfig;
    };
};
export declare const utils: {
    AddonResolver: typeof AddonResolver;
    errors: {
        AmbiguousError: typeof AmbiguousError;
        NotFound: typeof NotFound;
    };
    pg: {
        DatabaseResolver: typeof DatabaseResolver;
        PsqlService: typeof PsqlService;
        addonService: () => string;
        host: typeof getHost;
        isAdvancedDatabase: (addon: ExtendedAddon | ExtendedAddonAttachment["addon"]) => boolean;
        isAdvancedPrivateDatabase: (addon: ExtendedAddon | ExtendedAddonAttachment["addon"]) => boolean;
        isEssentialDatabase: (addon: ExtendedAddon | ExtendedAddonAttachment["addon"]) => boolean;
        isLegacyDatabase: (addon: ExtendedAddon | ExtendedAddonAttachment["addon"]) => boolean;
        isLegacyEssentialDatabase: (addon: ExtendedAddon | ExtendedAddonAttachment["addon"]) => boolean;
        isPostgresAddon: (addon: ExtendedAddon | ExtendedAddonAttachment["addon"]) => boolean;
        psql: {
            getConfigVarNameFromAttachment: typeof getConfigVarNameFromAttachment;
            getPsqlConfigs: typeof getPsqlConfigs;
            sshTunnel: typeof sshTunnel;
        };
    };
};
export declare const hux: {
    confirm: typeof confirm;
    prompt: typeof prompt;
    styledHeader: typeof styledHeader;
    styledJSON: typeof styledJSON;
    styledObject: typeof styledObject;
    table: typeof table;
    wait: typeof wait;
};
