@push.rocks/smartdns
Version:
A robust TypeScript library providing advanced DNS management and resolution capabilities including support for DNSSEC, custom DNS servers, and integration with various DNS providers.
32 lines (31 loc) • 718 B
TypeScript
interface DnssecZone {
zone: string;
algorithm: 'ECDSA' | 'ED25519' | 'RSA';
keySize: number;
days: number;
}
interface DnssecKeyPair {
privateKey: string;
publicKey: string;
}
export declare class DnsSec {
private zone;
private keyPair;
private ec?;
private eddsa?;
constructor(zone: DnssecZone);
private generateKeyPair;
getAlgorithmNumber(): number;
signData(data: Buffer): Buffer;
private generateDNSKEY;
private computeKeyTag;
private getDNSKEYRecord;
getDSRecord(): string;
getKeyPair(): DnssecKeyPair;
getDsAndKeyPair(): {
keyPair: DnssecKeyPair;
dsRecord: string;
dnskeyRecord: string;
};
}
export {};