/// <reference types="node" resolution-mode="require"/>
import { z } from 'zod';
export declare const css_selectors: z.ZodEffects<z.ZodArray<z.ZodString, "many">, string[], string[]>;
/**
 * Zod schema for rule.
 */
export declare const rule: z.ZodObject<{
    audioInnerHTML: z.ZodOptional<z.ZodFunction<z.ZodTuple<[z.ZodArray<z.ZodString, "many">], z.ZodUnknown>, z.ZodString>>;
    cssSelectors: z.ZodDefault<z.ZodEffects<z.ZodArray<z.ZodString, "many">, string[], string[]>>;
    hosting: z.ZodObject<{
        config: z.ZodObject<{}, "passthrough", z.ZodTypeAny, z.objectOutputType<{}, z.ZodTypeAny, "passthrough">, z.objectInputType<{}, z.ZodTypeAny, "passthrough">>;
        write: z.ZodFunction<z.ZodTuple<[], z.ZodUnknown>, z.ZodPromise<z.ZodUnion<[z.ZodObject<{
            error: z.ZodType<Error, z.ZodTypeDef, Error>;
            value: z.ZodOptional<z.ZodUndefined>;
        }, "strip", z.ZodTypeAny, {
            error: Error;
            value?: undefined;
        }, {
            error: Error;
            value?: undefined;
        }>, z.ZodObject<{
            error: z.ZodOptional<z.ZodUndefined>;
            value: z.ZodObject<{
                href: z.ZodString;
                message: z.ZodString;
            }, "strip", z.ZodTypeAny, {
                message: string;
                href: string;
            }, {
                message: string;
                href: string;
            }>;
        }, "strip", z.ZodTypeAny, {
            value: {
                message: string;
                href: string;
            };
            error?: undefined;
        }, {
            value: {
                message: string;
                href: string;
            };
            error?: undefined;
        }>]>>>;
    }, "strip", z.ZodTypeAny, {
        config: {} & {
            [k: string]: unknown;
        };
        write: (...args: unknown[]) => Promise<{
            value: {
                message: string;
                href: string;
            };
            error?: undefined;
        } | {
            error: Error;
            value?: undefined;
        }>;
    }, {
        config: {} & {
            [k: string]: unknown;
        };
        write: (...args: unknown[]) => Promise<{
            value: {
                message: string;
                href: string;
            };
            error?: undefined;
        } | {
            error: Error;
            value?: undefined;
        }>;
    }>;
    regex: z.ZodDefault<z.ZodType<RegExp, z.ZodTypeDef, RegExp>>;
    synthesis: z.ZodObject<{
        config: z.ZodObject<{}, "passthrough", z.ZodTypeAny, z.objectOutputType<{}, z.ZodTypeAny, "passthrough">, z.objectInputType<{}, z.ZodTypeAny, "passthrough">>;
        extension: z.ZodString;
        synthesize: z.ZodFunction<z.ZodTuple<[z.ZodString], z.ZodUnknown>, z.ZodPromise<z.ZodUnion<[z.ZodObject<{
            error: z.ZodType<Error, z.ZodTypeDef, Error>;
            value: z.ZodOptional<z.ZodUndefined>;
        }, "strip", z.ZodTypeAny, {
            error: Error;
            value?: undefined;
        }, {
            error: Error;
            value?: undefined;
        }>, z.ZodObject<{
            error: z.ZodOptional<z.ZodUndefined>;
            value: z.ZodType<import("stream").Readable, z.ZodTypeDef, import("stream").Readable>;
        }, "strip", z.ZodTypeAny, {
            value: import("stream").Readable;
            error?: undefined;
        }, {
            value: import("stream").Readable;
            error?: undefined;
        }>]>>>;
    }, "strip", z.ZodTypeAny, {
        config: {} & {
            [k: string]: unknown;
        };
        extension: string;
        synthesize: (args_0: string, ...args_1: unknown[]) => Promise<{
            value: import("stream").Readable;
            error?: undefined;
        } | {
            error: Error;
            value?: undefined;
        }>;
    }, {
        config: {} & {
            [k: string]: unknown;
        };
        extension: string;
        synthesize: (args_0: string, ...args_1: unknown[]) => Promise<{
            value: import("stream").Readable;
            error?: undefined;
        } | {
            error: Error;
            value?: undefined;
        }>;
    }>;
    xPathExpressions: z.ZodDefault<z.ZodEffects<z.ZodArray<z.ZodString, "many">, string[], string[]>>;
}, "strip", z.ZodTypeAny, {
    cssSelectors: string[];
    hosting: {
        config: {} & {
            [k: string]: unknown;
        };
        write: (...args: unknown[]) => Promise<{
            value: {
                message: string;
                href: string;
            };
            error?: undefined;
        } | {
            error: Error;
            value?: undefined;
        }>;
    };
    regex: RegExp;
    synthesis: {
        config: {} & {
            [k: string]: unknown;
        };
        extension: string;
        synthesize: (args_0: string, ...args_1: unknown[]) => Promise<{
            value: import("stream").Readable;
            error?: undefined;
        } | {
            error: Error;
            value?: undefined;
        }>;
    };
    xPathExpressions: string[];
    audioInnerHTML?: ((args_0: string[], ...args_1: unknown[]) => string) | undefined;
}, {
    hosting: {
        config: {} & {
            [k: string]: unknown;
        };
        write: (...args: unknown[]) => Promise<{
            value: {
                message: string;
                href: string;
            };
            error?: undefined;
        } | {
            error: Error;
            value?: undefined;
        }>;
    };
    synthesis: {
        config: {} & {
            [k: string]: unknown;
        };
        extension: string;
        synthesize: (args_0: string, ...args_1: unknown[]) => Promise<{
            value: import("stream").Readable;
            error?: undefined;
        } | {
            error: Error;
            value?: undefined;
        }>;
    };
    audioInnerHTML?: ((args_0: string[], ...args_1: unknown[]) => string) | undefined;
    cssSelectors?: string[] | undefined;
    regex?: RegExp | undefined;
    xPathExpressions?: string[] | undefined;
}>;
/**
 * Rule defining how text should be synthesized by a text-to-speech client, and
 * where the generated audio asset/s should be hosted.
 *
 * @public
 * @interface
 */
export type Rule = z.infer<typeof rule>;
//# sourceMappingURL=rule.d.ts.map