| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176 | import Result, { Message, ResultOptions } from './result.js'import { SourceMap } from './postcss.js'import Processor from './processor.js'import Warning from './warning.js'import Root from './root.js'/** * A Promise proxy for the result of PostCSS transformations. * * A `LazyResult` instance is returned by `Processor#process`. * * ```js * const lazy = postcss([autoprefixer]).process(css) * ``` */export default class LazyResult implements PromiseLike<Result> {  /**   * Processes input CSS through synchronous and asynchronous plugins   * and calls `onFulfilled` with a Result instance. If a plugin throws   * an error, the `onRejected` callback will be executed.   *   * It implements standard Promise API.   *   * ```js   * postcss([autoprefixer]).process(css, { from: cssPath }).then(result => {   *   console.log(result.css)   * })   * ```   */  then: Promise<Result>['then']  /**   * Processes input CSS through synchronous and asynchronous plugins   * and calls onRejected for each error thrown in any plugin.   *   * It implements standard Promise API.   *   * ```js   * postcss([autoprefixer]).process(css).then(result => {   *   console.log(result.css)   * }).catch(error => {   *   console.error(error)   * })   * ```   */  catch: Promise<Result>['catch']  /**   * Processes input CSS through synchronous and asynchronous plugins   * and calls onFinally on any error or when all plugins will finish work.   *   * It implements standard Promise API.   *   * ```js   * postcss([autoprefixer]).process(css).finally(() => {   *   console.log('processing ended')   * })   * ```   */  finally: Promise<Result>['finally']  /**   * @param processor Processor used for this transformation.   * @param css       CSS to parse and transform.   * @param opts      Options from the `Processor#process` or `Root#toResult`.   */  constructor(processor: Processor, css: string, opts: ResultOptions)  /**   * Returns the default string description of an object.   * Required to implement the Promise interface.   */  get [Symbol.toStringTag](): string  /**   * Returns a `Processor` instance, which will be used   * for CSS transformations.   */  get processor(): Processor  /**   * Options from the `Processor#process` call.   */  get opts(): ResultOptions  /**   * Processes input CSS through synchronous plugins, converts `Root`   * to a CSS string and returns `Result#css`.   *   * This property will only work with synchronous plugins.   * If the processor contains any asynchronous plugins   * it will throw an error.   *   * PostCSS runners should always use `LazyResult#then`.   */  get css(): string  /**   * An alias for the `css` property. Use it with syntaxes   * that generate non-CSS output.   *   * This property will only work with synchronous plugins.   * If the processor contains any asynchronous plugins   * it will throw an error.   *   * PostCSS runners should always use `LazyResult#then`.   */  get content(): string  /**   * Processes input CSS through synchronous plugins   * and returns `Result#map`.   *   * This property will only work with synchronous plugins.   * If the processor contains any asynchronous plugins   * it will throw an error.   *   * PostCSS runners should always use `LazyResult#then`.   */  get map(): SourceMap  /**   * Processes input CSS through synchronous plugins   * and returns `Result#root`.   *   * This property will only work with synchronous plugins. If the processor   * contains any asynchronous plugins it will throw an error.   *   * PostCSS runners should always use `LazyResult#then`.   */  get root(): Root  /**   * Processes input CSS through synchronous plugins   * and returns `Result#messages`.   *   * This property will only work with synchronous plugins. If the processor   * contains any asynchronous plugins it will throw an error.   *   * PostCSS runners should always use `LazyResult#then`.   */  get messages(): Message[]  /**   * Processes input CSS through synchronous plugins   * and calls `Result#warnings`.   *   * @return Warnings from plugins.   */  warnings(): Warning[]  /**   * Alias for the `LazyResult#css` property.   *   * ```js   * lazy + '' === lazy.css   * ```   *   * @return Output CSS.   */  toString(): string  /**   * Run plugin in sync way and return `Result`.   *   * @return Result with output content.   */  sync(): Result  /**   * Run plugin in async way and return `Result`.   *   * @return Result with output content.   */  async(): Promise<Result>}
 |