import type { HomeRoutingCluster, RoutingCluster, SubRoutingCluster } from "@paroicms/public-anywhere-lib";
import type { Knex } from "knex";
import type { SiteContext } from "../../site-context/site-context.types.js";
export declare function loadSiteNodeId(cn: Knex): Promise<string>;
export declare function loadSiteAndHomeNodeId(cn: Knex): Promise<{
    siteNodeId: string;
    homeNodeId: string;
}>;
export declare function loadRoutingCluster(siteContext: Pick<SiteContext, "siteSchema" | "cn">, clusterRoot: {
    kind: "home";
    nodeId: string;
    typeName: "home";
    siteNodeId: string;
}): Promise<HomeRoutingCluster>;
export declare function loadRoutingCluster(siteContext: Pick<SiteContext, "siteSchema" | "cn">, clusterRoot: {
    kind: "sub";
    nodeId: string;
    typeName: string;
}): Promise<SubRoutingCluster>;
export declare function loadRoutingCluster(siteContext: Pick<SiteContext, "siteSchema" | "cn">, clusterRoot: {
    kind: "home" | "sub";
    nodeId: string;
    typeName: string;
}): Promise<RoutingCluster>;
export declare function loadRoutingClusterFromNode(siteContext: SiteContext, fromNode: {
    nodeId: string;
    typeName: string;
}): Promise<RoutingCluster>;
export declare function loadParentRoutingClusterFromNode(siteContext: SiteContext, fromNode: {
    nodeId: string;
    typeName: string;
}): Promise<RoutingCluster | undefined>;
export declare function loadRoutingClusterAndParents(siteContext: SiteContext, fromNode: {
    nodeId: string;
    typeName: string;
}): Promise<RoutingCluster[]>;
