import { IRenderMime } from '@jupyterlab/rendermime-interfaces';
/**
 * A class to sanitize HTML strings.
 */
export declare class Sanitizer implements IRenderMime.ISanitizer {
    constructor();
    /**
     * Sanitize an HTML string.
     *
     * @param dirty - The dirty text.
     *
     * @param options - The optional sanitization options.
     *
     * @returns The sanitized string.
     */
    sanitize(dirty: string, options?: IRenderMime.ISanitizerOptions): string;
    /**
     * @returns Whether to replace URLs by HTML anchors.
     */
    getAutolink(): boolean;
    /**
     * @returns Whether to allow name and id attributes.
     */
    get allowNamedProperties(): boolean;
    /**
     * @returns Whether to allow command linker attributes.
     */
    get allowCommandLinker(): boolean;
    /**
     * Set the allowed schemes
     *
     * @param scheme Allowed schemes.
     * Automatically regenerates sanitizer options to apply the change.
     * Note: the schemes merge into the current config and does not get overwritten.
     */
    setAllowedSchemes(scheme: Array<string>): void;
    /**
     * Set the URL replacement boolean.
     *
     * @param autolink URL replacement boolean.
     */
    setAutolink(autolink: boolean): void;
    /**
     * Set the whether to allow `name` and `id` attributes.
     */
    setAllowNamedProperties(allowNamedProperties: boolean): void;
    /**
     * Set whether to allow command linker attributes.
     *
     * @param allowCommandLinker Whether to allow command linker attributes.
     */
    setAllowCommandLinker(allowCommandLinker: boolean): void;
    private _autolink;
    private _allowNamedProperties;
    private _allowCommandLinker;
    private _customAllowedSchemes;
    private _options;
    private _generateOptions;
}
