sip.js
Version:
A SIP library for JavaScript
63 lines (62 loc) • 1.74 kB
TypeScript
import { Parameters } from "./parameters.js";
/**
* URI.
* @public
*/
export declare class URI extends Parameters {
headers: {
[name: string]: Array<string>;
};
private normal;
private raw;
/**
* Constructor
* @param scheme -
* @param user -
* @param host -
* @param port -
* @param parameters -
* @param headers -
*/
constructor(scheme: string | undefined, user: string, host: string, port?: number, parameters?: {
[name: string]: string | number | null;
}, headers?: {
[name: string]: Array<string>;
});
get scheme(): string;
set scheme(value: string);
get user(): string | undefined;
set user(value: string | undefined);
get host(): string;
set host(value: string);
get aor(): string;
get port(): number | undefined;
set port(value: number | undefined);
setHeader(name: string, value: Array<string> | string): void;
getHeader(name: string): Array<string> | undefined;
hasHeader(name: string): boolean;
deleteHeader(header: string): Array<string> | undefined;
clearHeaders(): void;
clone(): URI;
toRaw(): string;
toString(): string;
private get _normal();
private get _raw();
private _toString;
private escapeUser;
private headerize;
}
/**
* Returns true if URIs are equivalent per RFC 3261 Section 19.1.4.
* @param a - URI to compare
* @param b - URI to compare
*
* @remarks
* 19.1.4 URI Comparison
* Some operations in this specification require determining whether two
* SIP or SIPS URIs are equivalent.
*
* https://tools.ietf.org/html/rfc3261#section-19.1.4
* @internal
*/
export declare function equivalentURI(a: URI, b: URI): boolean;