Spaces:
Running
Running
File size: 1,360 Bytes
7c5b7bd |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 |
/// <reference types="node" />
import KeyValue from './KeyValue';
import { EventEmitter } from 'events';
export interface ServiceConfig {
name: string;
type: string;
port: number;
protocol?: 'tcp' | 'udp';
host?: string;
fqdn?: string;
subtypes?: Array<string>;
txt?: KeyValue;
probe?: boolean;
disableIPv6?: boolean;
}
export interface ServiceRecord {
name: string;
type: 'PTR' | 'SRV' | 'TXT' | 'A' | 'AAAA';
ttl: number;
data: KeyValue | string | any;
}
export interface ServiceReferer {
address: string;
family: 'IPv4' | 'IPv6';
port: number;
size: number;
}
export declare class Service extends EventEmitter {
name: string;
type: string;
protocol: 'tcp' | 'udp';
port: number;
host: string;
fqdn: string;
txt?: any;
subtypes?: Array<string>;
addresses?: Array<string>;
referer?: ServiceReferer;
disableIPv6: boolean;
probe: boolean;
published: boolean;
activated: boolean;
destroyed: boolean;
start?: CallableFunction;
stop?: CallableFunction;
private txtService;
constructor(config: ServiceConfig);
records(): Array<ServiceRecord>;
private RecordPTR;
private RecordSubtypePTR;
private RecordSRV;
private RecordTXT;
private RecordA;
private RecordAAAA;
}
export default Service;
|