import type { Command } from "commander";
import { type DnsProvider } from "../../lib/registrar.js";
/** Record types the store (local sqlite CHECK + cloud API) accepts on write. */
export declare const SUPPORTED_DNS_TYPES: Set<string>;
/**
 * Split provider-returned records into persistable ones and skipped ones.
 * Real zones always carry provider-managed records (SOA, and often CAA) whose
 * types are outside the supported set; persisting them fails the local CHECK
 * constraint and makes the cloud API return 400. `dns pull` must skip them.
 */
export declare function partitionPullableRecords<T extends {
    type: string;
}>(records: T[]): {
    keep: T[];
    skipped: Map<string, number>;
};
export declare function registerDnsCommands(program: Command, deps?: {
    getDnsProvider?: (name: string) => DnsProvider;
}): void;
//# sourceMappingURL=dns.d.ts.map