repo_description: Prettier is an opinionated code formatter.
repo_topics: angular ast css flow formatter graphql html javascript json jsx less markdown prettier printer scss typescript vue yaml
code: import canAttachComment from "./comments/can-attach-comment.js";
  import handleComments from "./comments/handle-comments.js";
  import isGap from "./comments/is-gap.js";
  import willPrintOwnComments from "./comments/will-print-own-comments.js";
  import embed from "./embed/index.js";
  import { locEndWithFullText, locStart } from "./location/index.js";
  import { massageAstNode } from "./massage-ast/index.js";
  import { insertPragma } from "./pragma.js";
  import { printComment } from "./print/comment.js";
  import { printEstree } from "./print/index.js";
  import getVisitorKeys from "./traverse/get-visitor-keys.js";
  import { isBlockComment } from "./utilities/comment-types.js";
  import hasPrettierIgnore from "./utilities/is-ignored.js";
  
  const features = {
    // TODO: Make this default behavior
    experimental_avoidAstMutation: true,
    experimental_locForRangeFormat: {
      locStart,
      locEnd: locEndWithFullText,
    },
  };
  
  const estree = {
    features,
    massageAstNode,
    canAttachComment,
    handleComments,
    isGap,
    willPrintOwnComments,
    embed,
    insertPragma,
    printComment,
    printPrettierIgnored: printEstree,
    print: printEstree,
    getVisitorKeys,
    isBlockComment,
    hasPrettierIgnore,
  };
  
  export { estree };
  