1 |
|
2 | import { SAXStream } from 'sax';
|
3 | import { Readable, Transform, TransformOptions, TransformCallback } from 'stream';
|
4 | import { SitemapItem, ErrorLevel } from './types';
|
5 | declare type Logger = (level: 'warn' | 'error' | 'info' | 'log', ...message: Parameters<Console['log']>[0]) => void;
|
6 | export interface XMLToSitemapItemStreamOptions extends TransformOptions {
|
7 | level?: ErrorLevel;
|
8 | logger?: Logger | false;
|
9 | }
|
10 |
|
11 |
|
12 |
|
13 |
|
14 | export declare class XMLToSitemapItemStream extends Transform {
|
15 | level: ErrorLevel;
|
16 | logger: Logger;
|
17 | error: Error | null;
|
18 | saxStream: SAXStream;
|
19 | constructor(opts?: XMLToSitemapItemStreamOptions);
|
20 | _transform(data: string, encoding: string, callback: TransformCallback): void;
|
21 | private err;
|
22 | }
|
23 | /**
|
24 | Read xml and resolve with the configuration that would produce it or reject with
|
25 | an error
|
26 | ```
|
27 | const { createReadStream } = require('fs')
|
28 | const { parseSitemap, createSitemap } = require('sitemap')
|
29 | parseSitemap(createReadStream('./example.xml')).then(
|
30 |
|
31 |
|
32 | (xmlConfig) => console.log(createSitemap(xmlConfig).toString()),
|
33 | (err) => console.log(err)
|
34 | )
|
35 | ```
|
36 | @param {Readable} xml what to parse
|
37 | @return {Promise<SitemapItem[]>} resolves with list of sitemap items that can be fed into a SitemapStream. Rejects with an Error object.
|
38 | */
|
39 | export declare function parseSitemap(xml: Readable): Promise<SitemapItem[]>;
|
40 | export interface ObjectStreamToJSONOptions extends TransformOptions {
|
41 | lineSeparated: boolean;
|
42 | }
|
43 | /**
|
44 | * A Transform that converts a stream of objects into a JSON Array or a line
|
45 | * separated stringified JSON
|
46 | * @param [lineSeparated=false] whether to separate entries by a new line or comma
|
47 | */
|
48 | export declare class ObjectStreamToJSON extends Transform {
|
49 | lineSeparated: boolean;
|
50 | firstWritten: boolean;
|
51 | constructor(opts?: ObjectStreamToJSONOptions);
|
52 | _transform(chunk: SitemapItem, encoding: string, cb: TransformCallback): void;
|
53 | _flush(cb: TransformCallback): void;
|
54 | }
|
55 | export {};
|
56 |
|
\ | No newline at end of file |