- name: title
  description: Extension title.
  schema: string

- name: author
  description: Extension author.
  schema: string

- name: version
  description: Extension version.
  schema:
    ref: semver

- name: quarto-required
  description: Quarto version range. See https://docs.npmjs.com/cli/v6/using-npm/semver for syntax details.
  schema: string

- name: contributes
  schema:
    object:
      properties:
        shortcodes:
          arrayOf: path
        filters:
          arrayOf:
            anyOf:
              - path
              - object:
                  properties:
                    path:
                      schema: path
                    at:
                      ref: filter-entry-point
                  required:
                    - path
        formats:
          schema: object
        engines:
          arrayOf:
            anyOf:
              - string
              - ref: external-engine
