34 lines
598 B
TypeScript
34 lines
598 B
TypeScript
import { DNSRecordType } from './dns.enum';
|
|
|
|
export interface DNSRecord {
|
|
[key: string]: string | number | boolean | undefined;
|
|
name: string;
|
|
type: DNSRecordType;
|
|
value: string;
|
|
forDeletion?: boolean;
|
|
}
|
|
|
|
export interface SOARecord extends DNSRecord {
|
|
nameserver: string;
|
|
email: string;
|
|
serial: number;
|
|
refresh: number;
|
|
retry: number;
|
|
expire: number;
|
|
minimum: number;
|
|
}
|
|
|
|
export interface DNSZone {
|
|
ttl: number;
|
|
records: DNSRecord[];
|
|
includes: string[];
|
|
}
|
|
|
|
export interface CachedZone {
|
|
name: string;
|
|
file: string;
|
|
zone: DNSZone;
|
|
added: Date;
|
|
changed: Date;
|
|
}
|