import type { Manifest } from "../manifest/schemas";
export declare function buildCapabilityMessage(key: string): string;
declare const GATED_FLAGS: readonly ["canIncludeSharedConnections", "canIncludeSharedTables", "canDeleteTables"];
export type GatedFlag = (typeof GATED_FLAGS)[number];
export interface CapabilitiesContext {
    checkCapability: (key: GatedFlag) => Promise<void>;
    hasCapability: (key: GatedFlag) => Promise<boolean>;
}
export declare const capabilitiesPlugin: (sdk: {
    context: {
        options?: {
            canIncludeSharedConnections?: boolean;
            canIncludeSharedTables?: boolean;
            canDeleteTables?: boolean;
        };
        getResolvedManifest: () => Promise<Manifest | null>;
    };
} & {
    context: {
        meta: Record<string, import("../..").PluginMeta>;
    };
}) => {
    context: CapabilitiesContext;
};
export type CapabilitiesPluginProvides = ReturnType<typeof capabilitiesPlugin>;
export {};
//# sourceMappingURL=index.d.ts.map