{
  "schemaVersion": 3,
  "packageVersion": "0.0.17",
  "typeSource": "types/program.d.ts",
  "errorPolicy": "An empty errors array means the compact card has no curated error override; consult the canonical route for validation, inference, and recovery behavior.",
  "count": 281,
  "cards": [
    {
      "schemaVersion": 3,
      "name": "createCanvas",
      "layer": "user-facing",
      "domain": "core",
      "summary": "Create the program's Canvas and plot bounds.",
      "signature": "createCanvas(options?: CanvasOptions): ChartProgram;",
      "intents": [
        "create canvas",
        "create",
        "add",
        "chart setup",
        "data and scales",
        "canvas",
        "chart size"
      ],
      "lifecycle": "Mutable resource",
      "resources": {
        "prerequisites": [],
        "owns": [
          "canvas"
        ],
        "idOptions": []
      },
      "authoringRoles": [
        "H3"
      ],
      "wraps": [
        "createGraphics",
        "editCanvas"
      ],
      "editableVia": [
        "editCanvas"
      ],
      "supports": {
        "entryPoints": [
          "default",
          "basic"
        ]
      },
      "units": [
        {
          "path": "width",
          "unit": "logical-pixel"
        },
        {
          "path": "height",
          "unit": "logical-pixel"
        },
        {
          "path": "margin",
          "unit": "logical-pixel"
        }
      ],
      "inference": [
        {
          "input": "omitted optional options",
          "strategy": "documented-default"
        }
      ],
      "completionRequirements": {
        "state": "contextual",
        "requires": [],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "width",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "height",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "background",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "margin",
          "required": false,
          "type": "number | Partial<Record<\"bottom\" | \"left\" | \"right\" | \"top\", number>> | undefined"
        }
      ],
      "callPatterns": [
        "createCanvas({ width?, height?, background?, margin? })"
      ],
      "snippet": "program.createCanvas({})",
      "errors": [],
      "route": "/reference/actions/charts-data/#createcanvas"
    },
    {
      "schemaVersion": 3,
      "name": "editCanvas",
      "layer": "user-facing",
      "domain": "core",
      "summary": "Edit Canvas properties and rematerialize connected consumers.",
      "signature": "editCanvas(options: CanvasOptions): ChartProgram;",
      "intents": [
        "edit canvas",
        "edit",
        "change",
        "chart setup",
        "data and scales",
        "canvas",
        "chart size"
      ],
      "lifecycle": "Mutable resource",
      "resources": {
        "prerequisites": [
          "existing canvas"
        ],
        "owns": [],
        "idOptions": []
      },
      "authoringRoles": [
        "H3"
      ],
      "wraps": [
        "editGraphics",
        "editXAxisLine",
        "editXAxisTicks",
        "editXAxisLabels",
        "editXAxisTitle",
        "editYAxisLine",
        "editYAxisTicks",
        "editYAxisLabels",
        "editYAxisTitle"
      ],
      "editableVia": [
        "editCanvas"
      ],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [
        {
          "path": "width",
          "unit": "logical-pixel"
        },
        {
          "path": "height",
          "unit": "logical-pixel"
        },
        {
          "path": "margin",
          "unit": "logical-pixel"
        }
      ],
      "inference": [],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "existing canvas"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "width",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "height",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "background",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "margin",
          "required": false,
          "type": "number | Partial<Record<\"bottom\" | \"left\" | \"right\" | \"top\", number>> | undefined"
        }
      ],
      "callPatterns": [
        "editCanvas({ width?, height?, background?, margin? })"
      ],
      "snippet": "program.editCanvas({ width: 640 })",
      "errors": [],
      "route": "/reference/actions/charts-data/#editcanvas"
    },
    {
      "schemaVersion": 3,
      "name": "fitCanvas",
      "layer": "user-facing",
      "domain": "core",
      "summary": "Fit an existing Full unit chart by shrinking its margins on a fixed Canvas.",
      "signature": "fitCanvas(options?: FitCanvasOptions): ChartProgram;",
      "intents": [
        "fit canvas",
        "layout",
        "avoid overlap",
        "chart setup",
        "data and scales",
        "canvas",
        "chart size"
      ],
      "lifecycle": "Mutable resource",
      "resources": {
        "prerequisites": [
          "existing canvas"
        ],
        "owns": [
          "canvas"
        ],
        "idOptions": []
      },
      "authoringRoles": [
        "H3"
      ],
      "wraps": [
        "editCanvas"
      ],
      "editableVia": [
        "fitCanvas"
      ],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [
        {
          "path": "padding",
          "unit": "logical-pixel"
        },
        {
          "path": "minPlotWidth",
          "unit": "logical-pixel"
        },
        {
          "path": "minPlotHeight",
          "unit": "logical-pixel"
        }
      ],
      "inference": [],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "existing canvas"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "padding",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "minPlotWidth",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "minPlotHeight",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "iterationLimit",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "overflow",
          "required": false,
          "type": "\"error\" | \"report\" | undefined"
        }
      ],
      "callPatterns": [
        "fitCanvas({ padding?, minPlotWidth?, minPlotHeight?, iterationLimit?, overflow? })"
      ],
      "snippet": "program.fitCanvas({ padding: 1 })",
      "errors": [],
      "route": "/reference/actions/charts-data/#fitcanvas"
    },
    {
      "schemaVersion": 3,
      "name": "applyTextMetrics",
      "layer": "user-facing",
      "domain": "core",
      "summary": "Apply a host-measured width profile to title, axis, legend, label, and composition layout.",
      "signature": "applyTextMetrics(options: ApplyTextMetricsOptions): ChartProgram;",
      "intents": [
        "apply text metrics",
        "apply",
        "set defaults",
        "chart setup",
        "data and scales",
        "measured text widths",
        "font measurement profile"
      ],
      "lifecycle": "Mutable resource",
      "resources": {
        "prerequisites": [],
        "owns": [
          "measured text widths"
        ],
        "idOptions": []
      },
      "authoringRoles": [
        "H3"
      ],
      "wraps": [],
      "editableVia": [
        "removeTextMetrics"
      ],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [],
      "inference": [],
      "completionRequirements": {
        "state": "contextual",
        "requires": [],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "profile",
          "required": true,
          "type": "TextMetricsProfile"
        }
      ],
      "callPatterns": [
        "applyTextMetrics({ profile })"
      ],
      "snippet": "program.applyTextMetrics({ profile: { schemaVersion: 1, id: \"host\", measurements: [] } })",
      "errors": [],
      "route": "/reference/actions/charts-data/#applytextmetrics"
    },
    {
      "schemaVersion": 3,
      "name": "removeTextMetrics",
      "layer": "user-facing",
      "domain": "core",
      "summary": "Remove the active profile and rematerialize with deterministic width estimates.",
      "signature": "removeTextMetrics(): ChartProgram;",
      "intents": [
        "remove text metrics",
        "remove",
        "delete",
        "chart setup",
        "data and scales",
        "measured text widths",
        "font measurement profile"
      ],
      "lifecycle": "Mutable resource",
      "resources": {
        "prerequisites": [
          "existing measured text widths"
        ],
        "owns": [],
        "idOptions": []
      },
      "authoringRoles": [
        "H3"
      ],
      "wraps": [],
      "editableVia": [],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [],
      "inference": [],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "existing measured text widths"
        ],
        "allowsEmpty": false
      },
      "options": [],
      "callPatterns": [
        "removeTextMetrics()"
      ],
      "snippet": "program.removeTextMetrics()",
      "errors": [],
      "route": "/reference/actions/charts-data/#removetextmetrics"
    },
    {
      "schemaVersion": 3,
      "name": "applyTheme",
      "layer": "user-facing",
      "domain": "core",
      "summary": "Use \"light\", \"dark\", or a custom partial definition such as:",
      "signature": "applyTheme(options: ApplyThemeOptions): ChartProgram;",
      "intents": [
        "apply theme",
        "apply",
        "set defaults",
        "chart setup",
        "data and scales",
        "program theme",
        "light or dark visual defaults"
      ],
      "lifecycle": "Mutable resource",
      "resources": {
        "prerequisites": [],
        "owns": [
          "program theme"
        ],
        "idOptions": []
      },
      "authoringRoles": [
        "H3"
      ],
      "wraps": [
        "editGraphics"
      ],
      "editableVia": [
        "applyTheme",
        "removeTheme"
      ],
      "supports": {
        "entryPoints": [
          "default",
          "basic"
        ]
      },
      "units": [],
      "inference": [],
      "completionRequirements": {
        "state": "contextual",
        "requires": [],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "theme",
          "required": true,
          "type": "ThemeDefinition"
        },
        {
          "name": "scope",
          "required": false,
          "type": "\"descendants\" | \"self\" | undefined"
        }
      ],
      "callPatterns": [
        "applyTheme({ theme, scope? })"
      ],
      "snippet": "program.applyTheme({ theme: \"dark\" })",
      "errors": [],
      "route": "/reference/actions/charts-data/#applytheme"
    },
    {
      "schemaVersion": 3,
      "name": "removeTheme",
      "layer": "user-facing",
      "domain": "core",
      "summary": "Remove the most recently applied theme scope on that receiver.",
      "signature": "removeTheme(): ChartProgram;",
      "intents": [
        "remove theme",
        "remove",
        "delete",
        "chart setup",
        "data and scales",
        "program theme",
        "light or dark visual defaults"
      ],
      "lifecycle": "Mutable resource",
      "resources": {
        "prerequisites": [
          "existing program theme"
        ],
        "owns": [],
        "idOptions": []
      },
      "authoringRoles": [
        "H3"
      ],
      "wraps": [
        "editGraphics"
      ],
      "editableVia": [
        "applyTheme"
      ],
      "supports": {
        "entryPoints": [
          "default",
          "basic"
        ]
      },
      "units": [],
      "inference": [],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "existing program theme"
        ],
        "allowsEmpty": false
      },
      "options": [],
      "callPatterns": [
        "removeTheme()"
      ],
      "snippet": "program.removeTheme()",
      "errors": [],
      "route": "/reference/actions/charts-data/#removetheme"
    },
    {
      "schemaVersion": 3,
      "name": "createData",
      "layer": "user-facing",
      "domain": "core",
      "summary": "Create one immutable named dataset.",
      "signature": "createData<Row extends object>(options: CreateDataOptions<Row>): ChartProgram;",
      "intents": [
        "create data",
        "create",
        "add",
        "chart setup",
        "data and scales",
        "dataset",
        "rows"
      ],
      "lifecycle": "Mutable resource",
      "resources": {
        "prerequisites": [],
        "owns": [
          "dataset"
        ],
        "idOptions": [
          "id"
        ]
      },
      "authoringRoles": [
        "H2"
      ],
      "wraps": [
        "editSemantic"
      ],
      "editableVia": [
        "removeData"
      ],
      "supports": {
        "entryPoints": [
          "default",
          "basic"
        ]
      },
      "units": [],
      "inference": [
        {
          "input": "omitted optional options",
          "strategy": "documented-default"
        }
      ],
      "completionRequirements": {
        "state": "contextual",
        "requires": [],
        "allowsEmpty": true
      },
      "options": [
        {
          "name": "id",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "values",
          "required": true,
          "type": "readonly (Row extends readonly unknown[] ? never : Row & StoredCell<Row>)[]"
        },
        {
          "name": "schema",
          "required": false,
          "type": "SourceSchemaInput | undefined"
        }
      ],
      "callPatterns": [
        "createData({ values, id?, schema? })"
      ],
      "snippet": "program.createData({ values: [{ category: \"A\", value: 1 }] })",
      "errors": [],
      "route": "/reference/actions/charts-data/#createdata"
    },
    {
      "schemaVersion": 3,
      "name": "reviseData",
      "layer": "user-facing",
      "domain": "core",
      "summary": "Create a fresh original-data revision and atomically update its dependent chart.",
      "signature": "reviseData<Row extends object>(options: ReviseDataOptions<Row>): ChartProgram;",
      "intents": [
        "revise data",
        "revise source data",
        "refresh chart rows",
        "create an immutable data revision",
        "chart setup",
        "data and scales",
        "dataset"
      ],
      "lifecycle": "Immutable create-only",
      "resources": {
        "prerequisites": [
          "source dataset"
        ],
        "owns": [
          "dataset"
        ],
        "idOptions": [
          "source",
          "id"
        ]
      },
      "authoringRoles": [
        "H3"
      ],
      "wraps": [
        "createData"
      ],
      "editableVia": [],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [],
      "inference": [
        {
          "input": "source",
          "strategy": "explicit"
        }
      ],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "source dataset"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "source",
          "required": true,
          "type": "string"
        },
        {
          "name": "id",
          "required": true,
          "type": "string"
        },
        {
          "name": "values",
          "required": true,
          "type": "readonly (Row extends readonly unknown[] ? never : Row & StoredCell<Row>)[]"
        },
        {
          "name": "schema",
          "required": false,
          "type": "SourceSchemaInput | undefined"
        }
      ],
      "callPatterns": [
        "reviseData({ source, id, values, schema? })"
      ],
      "snippet": "program.reviseData({ source: \"data-1\", id: \"data-1\", values: [{ category: \"A\", value: 1 }] })",
      "errors": [],
      "route": "/reference/actions/charts-data/#revisedata"
    },
    {
      "schemaVersion": 3,
      "name": "removeData",
      "layer": "user-facing",
      "domain": "core",
      "summary": "Remove one explicitly named dataset only when no mark, downstream dataset, retained recipe, or owned resource still refers to it.",
      "signature": "removeData(options: RemoveResourceOptions): ChartProgram;",
      "intents": [
        "remove data",
        "remove",
        "delete",
        "chart setup",
        "data and scales",
        "dataset",
        "rows"
      ],
      "lifecycle": "Mutable resource",
      "resources": {
        "prerequisites": [
          "existing dataset",
          "source dataset"
        ],
        "owns": [],
        "idOptions": [
          "id"
        ]
      },
      "authoringRoles": [
        "H2"
      ],
      "wraps": [
        "editSemantic"
      ],
      "editableVia": [],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [],
      "inference": [],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "existing dataset",
          "source dataset"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "id",
          "required": true,
          "type": "string"
        }
      ],
      "callPatterns": [
        "removeData({ id })"
      ],
      "snippet": "program.removeData({ id: \"unusedData\" })",
      "errors": [],
      "route": "/reference/actions/charts-data/#removedata"
    },
    {
      "schemaVersion": 3,
      "name": "removeScale",
      "layer": "user-facing",
      "domain": "core",
      "summary": "Remove one explicitly named unused semantic scale and its resolved cache entry.",
      "signature": "removeScale(options: RemoveResourceOptions): ChartProgram;",
      "intents": [
        "remove scale",
        "remove",
        "delete",
        "chart setup",
        "data and scales",
        "scale",
        "domain-to-range mapping"
      ],
      "lifecycle": "Mutable resource",
      "resources": {
        "prerequisites": [
          "existing scale"
        ],
        "owns": [],
        "idOptions": [
          "id"
        ]
      },
      "authoringRoles": [
        "H2"
      ],
      "wraps": [
        "editSemantic"
      ],
      "editableVia": [],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [],
      "inference": [],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "existing scale"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "id",
          "required": true,
          "type": "string"
        }
      ],
      "callPatterns": [
        "removeScale({ id })"
      ],
      "snippet": "program.removeScale({ id: \"unusedScale\" })",
      "errors": [],
      "route": "/reference/actions/charts-data/#removescale"
    },
    {
      "schemaVersion": 3,
      "name": "removeCoordinate",
      "layer": "user-facing",
      "domain": "core",
      "summary": "Remove one explicitly named unused coordinate after checking layer, guide, annotation, and retained data-space bindings.",
      "signature": "removeCoordinate(options: RemoveResourceOptions): ChartProgram;",
      "intents": [
        "remove coordinate",
        "remove",
        "delete",
        "chart setup",
        "data and scales",
        "coordinate system",
        "Cartesian or polar space"
      ],
      "lifecycle": "Mutable resource",
      "resources": {
        "prerequisites": [
          "existing coordinate system"
        ],
        "owns": [],
        "idOptions": [
          "id"
        ]
      },
      "authoringRoles": [
        "H2"
      ],
      "wraps": [
        "editSemantic"
      ],
      "editableVia": [],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [],
      "inference": [],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "existing coordinate system"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "id",
          "required": true,
          "type": "string"
        }
      ],
      "callPatterns": [
        "removeCoordinate({ id })"
      ],
      "snippet": "program.removeCoordinate({ id: \"unusedCoordinate\" })",
      "errors": [],
      "route": "/reference/actions/charts-data/#removecoordinate"
    },
    {
      "schemaVersion": 3,
      "name": "bindMarkData",
      "layer": "user-facing",
      "domain": "core",
      "summary": "Atomically connect one independent mark to an existing materialized dataset.",
      "signature": "bindMarkData(options: BindMarkDataOptions): ChartProgram;",
      "intents": [
        "bind mark data",
        "bind",
        "connect data",
        "chart setup",
        "data and scales",
        "mark data binding",
        "change mark dataset"
      ],
      "lifecycle": "Mutable resource",
      "resources": {
        "prerequisites": [
          "source dataset"
        ],
        "owns": [],
        "idOptions": [
          "target",
          "data"
        ]
      },
      "authoringRoles": [
        "H2"
      ],
      "wraps": [],
      "editableVia": [
        "bindMarkData"
      ],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [],
      "inference": [
        {
          "input": "target",
          "strategy": "explicit"
        },
        {
          "input": "data",
          "strategy": "explicit"
        }
      ],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "source dataset"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "target",
          "required": true,
          "type": "string"
        },
        {
          "name": "data",
          "required": true,
          "type": "string"
        }
      ],
      "callPatterns": [
        "bindMarkData({ target, data })"
      ],
      "snippet": "program.bindMarkData({ target: \"mark-1\", data: \"data-1\" })",
      "errors": [],
      "route": "/reference/actions/charts-data/#bindmarkdata"
    },
    {
      "schemaVersion": 3,
      "name": "filterData",
      "layer": "user-facing",
      "domain": "core",
      "summary": "Create an immutable named derived dataset using exactly one membership, comparison, or range filter.",
      "signature": "filterData(options: FilterDataOptions): ChartProgram;",
      "intents": [
        "filter data",
        "filter",
        "retain matching",
        "chart setup",
        "data and scales",
        "dataset",
        "rows"
      ],
      "lifecycle": "Mutable resource",
      "resources": {
        "prerequisites": [
          "source dataset"
        ],
        "owns": [
          "dataset"
        ],
        "idOptions": [
          "id",
          "source"
        ]
      },
      "authoringRoles": [
        "H2"
      ],
      "wraps": [
        "createDerivedData"
      ],
      "editableVia": [
        "editFilteredData"
      ],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [],
      "inference": [
        {
          "input": "source",
          "strategy": "explicit-current-unique-or-error"
        }
      ],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "source dataset"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "id",
          "required": true,
          "type": "string"
        },
        {
          "name": "source",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "field",
          "required": true,
          "type": "string"
        },
        {
          "name": "nulls",
          "required": false,
          "type": "\"exclude\" | \"include\" | undefined"
        },
        {
          "name": "oneOf",
          "required": false,
          "type": "readonly [DatasetScalar, ...DatasetScalar[]] | undefined"
        },
        {
          "name": "noneOf",
          "required": false,
          "type": "readonly [DatasetScalar, ...DatasetScalar[]] | undefined"
        },
        {
          "name": "predicate",
          "required": false,
          "type": "FilterComparison | undefined"
        },
        {
          "name": "range",
          "required": false,
          "type": "FilterRange | undefined"
        }
      ],
      "callPatterns": [
        "filterData({ id, field, predicate })",
        "filterData({ id, field, oneOf | range })"
      ],
      "snippet": "program.filterData({ id: \"filtered\", field: \"value\", predicate: { op: \"gt\", value: 0 } })",
      "errors": [
        {
          "error": "More or fewer than one of oneOf, predicate, and range is supplied.",
          "fix": "Choose exactly one filter mode."
        }
      ],
      "route": "/reference/actions/charts-data/#filterdata"
    },
    {
      "schemaVersion": 3,
      "name": "createSummaryData",
      "layer": "user-facing",
      "domain": "statistics",
      "summary": "Materialize reusable, first-appearance-ordered summary rows from one or more shared aggregate operations.",
      "signature": "createSummaryData(options: SummaryDataOptions): ChartProgram;",
      "intents": [
        "create summary data",
        "create",
        "add",
        "statistical layer",
        "statistical transform",
        "grouped summary data",
        "reusable aggregate rows"
      ],
      "lifecycle": "Mutable resource",
      "resources": {
        "prerequisites": [
          "source dataset"
        ],
        "owns": [
          "grouped summary data"
        ],
        "idOptions": [
          "id",
          "source"
        ]
      },
      "authoringRoles": [
        "H1"
      ],
      "wraps": [
        "createDerivedData"
      ],
      "editableVia": [
        "editSummaryData"
      ],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [],
      "inference": [
        {
          "input": "source",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "omitted optional options",
          "strategy": "documented-default"
        }
      ],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "source dataset"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "id",
          "required": true,
          "type": "string"
        },
        {
          "name": "source",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "groupBy",
          "required": false,
          "type": "string | readonly string[] | undefined"
        },
        {
          "name": "aggregates",
          "required": true,
          "type": "readonly SummaryAggregateOptions[]"
        },
        {
          "name": "members",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "weight",
          "required": false,
          "type": "StatisticalWeight | undefined"
        },
        {
          "name": "missing",
          "required": false,
          "type": "\"drop\" | \"error\" | undefined"
        },
        {
          "name": "empty",
          "required": false,
          "type": "\"identity\" | \"null\" | undefined"
        }
      ],
      "callPatterns": [
        "createSummaryData({ id, aggregates, source?, groupBy?, members?, weight?, missing?, empty? })"
      ],
      "snippet": "program.createSummaryData({ id: \"summary-data-1\", aggregates: [] })",
      "errors": [],
      "route": "/reference/actions/statistics/#createsummarydata"
    },
    {
      "schemaVersion": 3,
      "name": "createBinData",
      "layer": "user-facing",
      "domain": "statistics",
      "summary": "Materialize reusable one-dimensional bounds, counts, and optional source members using the same edge rules as Histogram.",
      "signature": "createBinData(options: BinDataOptions): ChartProgram;",
      "intents": [
        "create bin data",
        "create",
        "add",
        "statistical layer",
        "statistical transform",
        "one-dimensional bins",
        "reusable histogram bounds and counts"
      ],
      "lifecycle": "Mutable resource",
      "resources": {
        "prerequisites": [
          "source dataset"
        ],
        "owns": [
          "one-dimensional bins"
        ],
        "idOptions": [
          "id",
          "source"
        ]
      },
      "authoringRoles": [
        "H1"
      ],
      "wraps": [
        "createDerivedData"
      ],
      "editableVia": [
        "editBinData"
      ],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [
        {
          "path": "maxBins",
          "unit": "count"
        }
      ],
      "inference": [
        {
          "input": "source",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "extent",
          "strategy": "documented-auto"
        },
        {
          "input": "omitted optional options",
          "strategy": "documented-default"
        }
      ],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "source dataset"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "id",
          "required": true,
          "type": "string"
        },
        {
          "name": "source",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "field",
          "required": true,
          "type": "string"
        },
        {
          "name": "extent",
          "required": false,
          "type": "\"auto\" | readonly [number, number] | undefined"
        },
        {
          "name": "nice",
          "required": false,
          "type": "boolean | undefined"
        },
        {
          "name": "zero",
          "required": false,
          "type": "boolean | undefined"
        },
        {
          "name": "includeEmpty",
          "required": false,
          "type": "boolean | undefined"
        },
        {
          "name": "members",
          "required": false,
          "type": "boolean | undefined"
        },
        {
          "name": "weight",
          "required": false,
          "type": "StatisticalWeight | undefined"
        },
        {
          "name": "missing",
          "required": false,
          "type": "\"drop\" | \"error\" | undefined"
        },
        {
          "name": "as",
          "required": false,
          "type": "BinDataOutputFields | undefined"
        },
        {
          "name": "maxBins",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "step",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "boundaries",
          "required": false,
          "type": "readonly [number, number, ...number[]] | undefined"
        }
      ],
      "callPatterns": [
        "createBinData({ id, field, source?, extent?, nice?, zero?, includeEmpty?, members? })"
      ],
      "snippet": "program.createBinData({ id: \"bin-data-1\", field: \"value\" })",
      "errors": [],
      "route": "/reference/actions/statistics/#createbindata"
    },
    {
      "schemaVersion": 3,
      "name": "createFoldData",
      "layer": "user-facing",
      "domain": "statistics",
      "summary": "Materialize selected wide fields as stable key/value rows while preserving every source cell.",
      "signature": "createFoldData(options: FoldDataOptions): ChartProgram;",
      "intents": [
        "create fold data",
        "create",
        "add",
        "statistical layer",
        "statistical transform",
        "wide to long data",
        "key value rows"
      ],
      "lifecycle": "Mutable resource",
      "resources": {
        "prerequisites": [
          "source dataset"
        ],
        "owns": [
          "wide to long data"
        ],
        "idOptions": [
          "id",
          "source"
        ]
      },
      "authoringRoles": [
        "H1"
      ],
      "wraps": [
        "createDerivedData"
      ],
      "editableVia": [
        "editFoldData"
      ],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [],
      "inference": [
        {
          "input": "source",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "omitted optional options",
          "strategy": "documented-default"
        }
      ],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "source dataset"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "id",
          "required": true,
          "type": "string"
        },
        {
          "name": "source",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "fields",
          "required": true,
          "type": "readonly string[]"
        },
        {
          "name": "as",
          "required": false,
          "type": "FoldDataOutputFields | undefined"
        }
      ],
      "callPatterns": [
        "createFoldData({ id, fields, source?, as? })"
      ],
      "snippet": "program.createFoldData({ id: \"long\", fields: [\"apples\", \"pears\"] })",
      "errors": [],
      "route": "/reference/actions/statistics/#createfolddata"
    },
    {
      "schemaVersion": 3,
      "name": "createComputedData",
      "layer": "user-facing",
      "domain": "statistics",
      "summary": "Materialize a typed primitive or null field from a serializable, closed expression.",
      "signature": "createComputedData(options: ComputedDataOptions): ChartProgram;",
      "intents": [
        "create computed data",
        "create",
        "add",
        "statistical layer",
        "statistical transform",
        "computed field",
        "typed formula data"
      ],
      "lifecycle": "Mutable resource",
      "resources": {
        "prerequisites": [
          "source dataset"
        ],
        "owns": [
          "computed field"
        ],
        "idOptions": [
          "id",
          "source"
        ]
      },
      "authoringRoles": [
        "H1"
      ],
      "wraps": [
        "createDerivedData"
      ],
      "editableVia": [
        "editComputedData"
      ],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [],
      "inference": [
        {
          "input": "source",
          "strategy": "explicit-current-unique-or-error"
        }
      ],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "source dataset"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "id",
          "required": true,
          "type": "string"
        },
        {
          "name": "source",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "as",
          "required": true,
          "type": "string"
        },
        {
          "name": "expression",
          "required": true,
          "type": "ComputedExpression"
        }
      ],
      "callPatterns": [
        "createComputedData({ id, as, expression, source? })"
      ],
      "snippet": "program.createComputedData({ id: \"ratios\", as: \"ratio\", expression: { op: \"divide\", left: { field: \"part\" }, right: { field: \"whole\" } } })",
      "errors": [],
      "route": "/reference/actions/statistics/#createcomputeddata"
    },
    {
      "schemaVersion": 3,
      "name": "createNormalizedData",
      "layer": "user-facing",
      "domain": "statistics",
      "summary": "Materialize row-preserving share, z-score, min-max, index, change, or fractional percent-change values independently within each group.",
      "signature": "createNormalizedData(options: NormalizedDataOptions): ChartProgram;",
      "intents": [
        "create normalized data",
        "create",
        "add",
        "statistical layer",
        "statistical transform",
        "normalized data",
        "group shares and baseline comparisons"
      ],
      "lifecycle": "Mutable resource",
      "resources": {
        "prerequisites": [
          "source dataset"
        ],
        "owns": [
          "normalized data"
        ],
        "idOptions": [
          "id",
          "source"
        ]
      },
      "authoringRoles": [
        "H1"
      ],
      "wraps": [
        "createDerivedData"
      ],
      "editableVia": [
        "editNormalizedData"
      ],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [],
      "inference": [
        {
          "input": "source",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "omitted optional options",
          "strategy": "documented-default"
        }
      ],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "source dataset"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "id",
          "required": true,
          "type": "string"
        },
        {
          "name": "source",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "field",
          "required": true,
          "type": "string"
        },
        {
          "name": "as",
          "required": true,
          "type": "string"
        },
        {
          "name": "groupBy",
          "required": false,
          "type": "string | readonly string[] | undefined"
        },
        {
          "name": "method",
          "required": true,
          "type": "\"change\" | \"index\" | \"minmax\" | \"percentChange\" | \"share\" | \"zscore\""
        },
        {
          "name": "zeroDenominator",
          "required": false,
          "type": "NormalizeZeroDenominator | undefined"
        },
        {
          "name": "variance",
          "required": false,
          "type": "\"population\" | \"sample\" | undefined"
        },
        {
          "name": "baseline",
          "required": false,
          "type": "{ position: \"first\" | \"last\"; } | undefined"
        },
        {
          "name": "sortBy",
          "required": false,
          "type": "readonly [WindowSort, ...WindowSort[]]"
        }
      ],
      "callPatterns": [
        "createNormalizedData({ id, field, as, method, source?, groupBy?, zeroDenominator?, variance? })"
      ],
      "snippet": "program.createNormalizedData({ id: \"normalized\", field: \"amount\", as: \"share\", method: \"share\" })",
      "errors": [],
      "route": "/reference/actions/statistics/#createnormalizeddata"
    },
    {
      "schemaVersion": 3,
      "name": "createSortedData",
      "layer": "user-facing",
      "domain": "statistics",
      "summary": "Create immutable rows in stable multi-key order.",
      "signature": "createSortedData(options: SortedDataOptions): ChartProgram;",
      "intents": [
        "create sorted data",
        "create",
        "add",
        "statistical layer",
        "statistical transform",
        "sorted dataset",
        "stable multi-key row order"
      ],
      "lifecycle": "Mutable resource",
      "resources": {
        "prerequisites": [
          "source dataset"
        ],
        "owns": [
          "sorted dataset"
        ],
        "idOptions": [
          "id",
          "source"
        ]
      },
      "authoringRoles": [
        "H1"
      ],
      "wraps": [
        "createDerivedData"
      ],
      "editableVia": [
        "editSortedData"
      ],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [],
      "inference": [
        {
          "input": "source",
          "strategy": "explicit-current-unique-or-error"
        }
      ],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "source dataset"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "id",
          "required": true,
          "type": "string"
        },
        {
          "name": "source",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "sortBy",
          "required": true,
          "type": "readonly [SortKey, ...SortKey[]]"
        }
      ],
      "callPatterns": [
        "createSortedData({ id, sortBy, source? })"
      ],
      "snippet": "program.createSortedData({ id: \"sorted\", sortBy: [{ field: \"group\" }, { field: \"value\", order: \"descending\", nulls: \"last\" }] })",
      "errors": [],
      "route": "/reference/actions/statistics/#createsorteddata"
    },
    {
      "schemaVersion": 3,
      "name": "createCompleteData",
      "layer": "user-facing",
      "domain": "statistics",
      "summary": "Complete one typed key domain independently inside every observed group, with explicit fill and source-membership provenance for synthesized rows.",
      "signature": "createCompleteData(options: CompleteDataOptions): ChartProgram;",
      "intents": [
        "create complete data",
        "create",
        "add",
        "statistical layer",
        "statistical transform",
        "completed data",
        "explicit key-domain rows"
      ],
      "lifecycle": "Mutable resource",
      "resources": {
        "prerequisites": [
          "source dataset"
        ],
        "owns": [
          "completed data"
        ],
        "idOptions": [
          "id",
          "source"
        ]
      },
      "authoringRoles": [
        "H1"
      ],
      "wraps": [
        "createDerivedData"
      ],
      "editableVia": [
        "editCompleteData"
      ],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [],
      "inference": [
        {
          "input": "source",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "omitted optional options",
          "strategy": "documented-default"
        }
      ],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "source dataset"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "id",
          "required": true,
          "type": "string"
        },
        {
          "name": "source",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "key",
          "required": true,
          "type": "string"
        },
        {
          "name": "groupBy",
          "required": false,
          "type": "string | readonly string[] | undefined"
        },
        {
          "name": "fill",
          "required": false,
          "type": "Readonly<Record<string, DatasetScalar>> | undefined"
        },
        {
          "name": "members",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "values",
          "required": false,
          "type": "readonly [DatasetScalar, ...DatasetScalar[]] | undefined"
        },
        {
          "name": "sequence",
          "required": false,
          "type": "{ start: number; end: number; step: number; } | undefined"
        }
      ],
      "callPatterns": [
        "createCompleteData({ id, key, source?, groupBy?, fill?, members?, values?, sequence? })"
      ],
      "snippet": "program.createCompleteData({ id: \"completed\", key: \"period\", groupBy: \"series\", values: [1, 2, 3], members: \"sourceRows\" })",
      "errors": [],
      "route": "/reference/actions/statistics/#createcompletedata"
    },
    {
      "schemaVersion": 3,
      "name": "createImputedData",
      "layer": "user-facing",
      "domain": "statistics",
      "summary": "Replace nullish cells by constant, forward, backward, or distance-based linear imputation while preserving group boundaries and final source order.",
      "signature": "createImputedData(options: ImputedDataOptions): ChartProgram;",
      "intents": [
        "create imputed data",
        "create",
        "add",
        "statistical layer",
        "statistical transform",
        "imputed data",
        "filled missing values"
      ],
      "lifecycle": "Mutable resource",
      "resources": {
        "prerequisites": [
          "source dataset"
        ],
        "owns": [
          "imputed data"
        ],
        "idOptions": [
          "id",
          "source"
        ]
      },
      "authoringRoles": [
        "H1"
      ],
      "wraps": [
        "createDerivedData"
      ],
      "editableVia": [
        "editImputedData"
      ],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [],
      "inference": [
        {
          "input": "source",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "omitted optional options",
          "strategy": "documented-default"
        }
      ],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "source dataset"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "id",
          "required": true,
          "type": "string"
        },
        {
          "name": "source",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "fields",
          "required": true,
          "type": "string | readonly [string, ...string[]]"
        },
        {
          "name": "groupBy",
          "required": false,
          "type": "string | readonly string[] | undefined"
        },
        {
          "name": "edges",
          "required": false,
          "type": "\"error\" | \"keep\" | undefined"
        },
        {
          "name": "maxGap",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "method",
          "required": true,
          "type": "\"backward\" | \"constant\" | \"forward\" | \"linear\""
        },
        {
          "name": "value",
          "required": false,
          "type": "DatasetScalar | undefined"
        },
        {
          "name": "sortBy",
          "required": false,
          "type": "readonly WindowSort[] | readonly [{ field: string; order?: \"ascending\" | undefined; }] | readonly [WindowSort, ...WindowSort[]] | undefined"
        }
      ],
      "callPatterns": [
        "createImputedData({ id, fields, method: \"constant\", value, source?, groupBy? })",
        "createImputedData({ id, fields, method: \"forward\" | \"backward\" | \"linear\", sortBy, source?, groupBy? })"
      ],
      "snippet": "program.createImputedData({ id: \"imputed\", fields: \"amount\", groupBy: \"series\", sortBy: [{ field: \"period\" }], method: \"linear\" })",
      "errors": [],
      "route": "/reference/actions/statistics/#createimputeddata"
    },
    {
      "schemaVersion": 3,
      "name": "createStackData",
      "layer": "user-facing",
      "domain": "statistics",
      "summary": "Materialize reusable start/end/value/share rows with the same stack math used by Bar and Area layouts.",
      "signature": "createStackData(options: StackDataOptions): ChartProgram;",
      "intents": [
        "create stack data",
        "create",
        "add",
        "statistical layer",
        "statistical transform",
        "stacked data",
        "reusable stack endpoints and shares"
      ],
      "lifecycle": "Mutable resource",
      "resources": {
        "prerequisites": [
          "source dataset"
        ],
        "owns": [
          "stacked data"
        ],
        "idOptions": [
          "id",
          "source"
        ]
      },
      "authoringRoles": [
        "H1"
      ],
      "wraps": [
        "createDerivedData"
      ],
      "editableVia": [
        "editStackData"
      ],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [],
      "inference": [
        {
          "input": "source",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "omitted optional options",
          "strategy": "documented-default"
        }
      ],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "source dataset"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "id",
          "required": true,
          "type": "string"
        },
        {
          "name": "source",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "category",
          "required": true,
          "type": "string"
        },
        {
          "name": "group",
          "required": true,
          "type": "string"
        },
        {
          "name": "value",
          "required": true,
          "type": "string"
        },
        {
          "name": "mode",
          "required": false,
          "type": "StackDataMode | undefined"
        },
        {
          "name": "as",
          "required": false,
          "type": "StackDataOutputFields | undefined"
        }
      ],
      "callPatterns": [
        "createStackData({ id, category, group, value, source?, mode?, as? })"
      ],
      "snippet": "program.createStackData({ id: \"stacked\", category: \"category\", group: \"series\", value: \"amount\" })",
      "errors": [],
      "route": "/reference/actions/statistics/#createstackdata"
    },
    {
      "schemaVersion": 3,
      "name": "createDensityData",
      "layer": "user-facing",
      "domain": "core",
      "summary": "Create immutable KDE rows on one shared inclusive sample grid.",
      "signature": "createDensityData(options: DensityDataOptions): ChartProgram;",
      "intents": [
        "create density data",
        "create",
        "add",
        "chart setup",
        "data and scales",
        "kernel density data",
        "KDE"
      ],
      "lifecycle": "Mutable resource",
      "resources": {
        "prerequisites": [
          "source dataset"
        ],
        "owns": [
          "kernel density data"
        ],
        "idOptions": [
          "id",
          "source"
        ]
      },
      "authoringRoles": [
        "H2"
      ],
      "wraps": [
        "createDerivedData"
      ],
      "editableVia": [
        "editDensityData"
      ],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [
        {
          "path": "bandwidth",
          "unit": "data-value"
        },
        {
          "path": "steps",
          "unit": "count"
        }
      ],
      "inference": [
        {
          "input": "source",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "bandwidth",
          "strategy": "documented-auto"
        },
        {
          "input": "extent",
          "strategy": "documented-auto"
        },
        {
          "input": "omitted optional options",
          "strategy": "documented-default"
        }
      ],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "source dataset"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "id",
          "required": true,
          "type": "string"
        },
        {
          "name": "source",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "field",
          "required": true,
          "type": "string"
        },
        {
          "name": "groupBy",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "bandwidth",
          "required": false,
          "type": "number | \"auto\" | undefined"
        },
        {
          "name": "extent",
          "required": false,
          "type": "\"auto\" | readonly [number, number] | undefined"
        },
        {
          "name": "steps",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "kernel",
          "required": false,
          "type": "DensityKernel | undefined"
        },
        {
          "name": "normalization",
          "required": false,
          "type": "DensityNormalization | undefined"
        },
        {
          "name": "weight",
          "required": false,
          "type": "StatisticalWeight | undefined"
        },
        {
          "name": "missing",
          "required": false,
          "type": "\"drop\" | \"error\" | undefined"
        },
        {
          "name": "as",
          "required": false,
          "type": "readonly [string, string] | undefined"
        }
      ],
      "callPatterns": [
        "createDensityData({ id, field, source?, groupBy?, bandwidth?, extent?, steps?, kernel? })"
      ],
      "snippet": "program.createDensityData({ id: \"density-data-1\", field: \"value\" })",
      "errors": [],
      "route": "/reference/actions/charts-data/#createdensitydata"
    },
    {
      "schemaVersion": 3,
      "name": "createRegressionData",
      "layer": "user-facing",
      "domain": "core",
      "summary": "Create immutable linear, polynomial, or LOESS fitted rows at observed unique x values.",
      "signature": "createRegressionData(options: RegressionDataOptions): ChartProgram;",
      "intents": [
        "create regression data",
        "create",
        "add",
        "chart setup",
        "data and scales",
        "fitted values",
        "regression transform"
      ],
      "lifecycle": "Mutable resource",
      "resources": {
        "prerequisites": [
          "source dataset"
        ],
        "owns": [
          "fitted values"
        ],
        "idOptions": [
          "id",
          "source"
        ]
      },
      "authoringRoles": [
        "H2"
      ],
      "wraps": [
        "createDerivedData"
      ],
      "editableVia": [
        "editRegressionData"
      ],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [],
      "inference": [
        {
          "input": "source",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "omitted optional options",
          "strategy": "documented-default"
        }
      ],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "source dataset"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "id",
          "required": true,
          "type": "string"
        },
        {
          "name": "source",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "x",
          "required": true,
          "type": "string"
        },
        {
          "name": "y",
          "required": true,
          "type": "string"
        },
        {
          "name": "groupBy",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "missing",
          "required": false,
          "type": "\"drop\" | \"error\" | undefined"
        },
        {
          "name": "method",
          "required": false,
          "type": "\"linear\" | \"loess\" | \"polynomial\" | undefined"
        },
        {
          "name": "degree",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "span",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "confidenceMethod",
          "required": false,
          "type": "ConfidenceIntervalMethod | undefined"
        },
        {
          "name": "level",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "confidence",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "interval",
          "required": false,
          "type": "false | RegressionInterval | undefined"
        },
        {
          "name": "predict",
          "required": false,
          "type": "RegressionPredictOptions | undefined"
        }
      ],
      "callPatterns": [
        "createRegressionData({ id, x, y, source?, groupBy?, missing?, method?, degree? })"
      ],
      "snippet": "program.createRegressionData({ id: \"regression-data-1\", x: \"x\", y: \"y\" })",
      "errors": [],
      "route": "/reference/actions/charts-data/#createregressiondata"
    },
    {
      "schemaVersion": 3,
      "name": "createWindowData",
      "layer": "user-facing",
      "domain": "core",
      "summary": "Create an immutable derived dataset by applying ordered row-number, rank, dense-rank, cumulative-sum, lag, lead, moving-mean, or moving-sum operations within optional partitions.",
      "signature": "createWindowData(options: WindowDataOptions): ChartProgram;",
      "intents": [
        "create window data",
        "create",
        "add",
        "chart setup",
        "data and scales",
        "moving window",
        "rank"
      ],
      "lifecycle": "Mutable resource",
      "resources": {
        "prerequisites": [
          "source dataset"
        ],
        "owns": [
          "moving window"
        ],
        "idOptions": [
          "id",
          "source"
        ]
      },
      "authoringRoles": [
        "H2"
      ],
      "wraps": [
        "createDerivedData"
      ],
      "editableVia": [
        "editWindowData"
      ],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [
        {
          "path": "temporalUnit",
          "unit": "temporal-input"
        }
      ],
      "inference": [
        {
          "input": "source",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "omitted optional options",
          "strategy": "documented-default"
        }
      ],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "source dataset"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "id",
          "required": true,
          "type": "string"
        },
        {
          "name": "source",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "partitionBy",
          "required": false,
          "type": "string | readonly string[] | undefined"
        },
        {
          "name": "sortBy",
          "required": false,
          "type": "readonly WindowSort[] | undefined"
        },
        {
          "name": "operations",
          "required": true,
          "type": "readonly WindowOperation[]"
        },
        {
          "name": "temporalUnit",
          "required": false,
          "type": "TemporalInputUnit | undefined"
        }
      ],
      "callPatterns": [
        "createWindowData({ id, operations, source?, partitionBy?, sortBy?, temporalUnit? })"
      ],
      "snippet": "program.createWindowData({ id: \"windowed\", operations: [{ op: \"movingMean\", field: \"value\", as: \"movingMean\", frame: { preceding: 2 } }] })",
      "errors": [],
      "route": "/reference/actions/charts-data/#createwindowdata"
    },
    {
      "schemaVersion": 3,
      "name": "createTimeUnitData",
      "layer": "user-facing",
      "domain": "core",
      "summary": "Create an immutable row-preserving dataset with one UTC or IANA-zone calendar bucket timestamp, including week, or a nominal local weekday field.",
      "signature": "createTimeUnitData(options: TimeUnitDataOptions): ChartProgram;",
      "intents": [
        "create time unit data",
        "create",
        "add",
        "chart setup",
        "data and scales",
        "date bucket",
        "UTC time unit"
      ],
      "lifecycle": "Mutable resource",
      "resources": {
        "prerequisites": [
          "source dataset"
        ],
        "owns": [
          "date bucket"
        ],
        "idOptions": [
          "id",
          "source"
        ]
      },
      "authoringRoles": [
        "H2"
      ],
      "wraps": [
        "createDerivedData"
      ],
      "editableVia": [
        "editTimeUnitData"
      ],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [
        {
          "path": "unit",
          "unit": "calendar-unit"
        },
        {
          "path": "temporalUnit",
          "unit": "temporal-input"
        }
      ],
      "inference": [
        {
          "input": "source",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "omitted optional options",
          "strategy": "documented-default"
        }
      ],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "source dataset"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "id",
          "required": true,
          "type": "string"
        },
        {
          "name": "source",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "field",
          "required": true,
          "type": "string"
        },
        {
          "name": "temporalUnit",
          "required": false,
          "type": "TemporalInputUnit | undefined"
        },
        {
          "name": "as",
          "required": true,
          "type": "string"
        },
        {
          "name": "timeZone",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "unit",
          "required": true,
          "type": "\"day\" | \"hour\" | \"minute\" | \"month\" | \"quarter\" | \"second\" | \"week\" | \"weekday\" | \"year\""
        },
        {
          "name": "weekStartsOn",
          "required": false,
          "type": "0 | 1 | 2 | 3 | 4 | 5 | 6 | undefined"
        },
        {
          "name": "weekRule",
          "required": false,
          "type": "\"calendar\" | \"iso\" | undefined"
        }
      ],
      "callPatterns": [
        "createTimeUnitData({ id, field, as, unit, source?, temporalUnit?, timeZone?, weekStartsOn? })"
      ],
      "snippet": "program.createTimeUnitData({ id: \"time-unit-data-1\", field: \"value\", as: \"derived\", unit: \"month\" })",
      "errors": [],
      "route": "/reference/actions/charts-data/#createtimeunitdata"
    },
    {
      "schemaVersion": 3,
      "name": "createBin2DData",
      "layer": "user-facing",
      "domain": "core",
      "summary": "Aggregate finite x/y pairs into deterministic rectangular cell bounds and counts.",
      "signature": "createBin2DData(options: Bin2DDataOptions): ChartProgram;",
      "intents": [
        "create bin2 d data",
        "create",
        "add",
        "chart setup",
        "data and scales",
        "two-dimensional bins",
        "rectangular aggregation"
      ],
      "lifecycle": "Mutable resource",
      "resources": {
        "prerequisites": [
          "source dataset"
        ],
        "owns": [
          "two-dimensional bins"
        ],
        "idOptions": [
          "id",
          "source"
        ]
      },
      "authoringRoles": [
        "H2"
      ],
      "wraps": [
        "createDerivedData"
      ],
      "editableVia": [
        "editBin2DData"
      ],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [],
      "inference": [
        {
          "input": "source",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "omitted optional options",
          "strategy": "documented-default"
        }
      ],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "source dataset"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "id",
          "required": true,
          "type": "string"
        },
        {
          "name": "source",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "x",
          "required": true,
          "type": "string"
        },
        {
          "name": "y",
          "required": true,
          "type": "string"
        },
        {
          "name": "bins",
          "required": false,
          "type": "number | Bin2DCounts | undefined"
        },
        {
          "name": "extent",
          "required": false,
          "type": "Bin2DExtent | undefined"
        },
        {
          "name": "includeEmpty",
          "required": false,
          "type": "boolean | undefined"
        },
        {
          "name": "members",
          "required": false,
          "type": "boolean | undefined"
        },
        {
          "name": "as",
          "required": false,
          "type": "Bin2DOutputFields | undefined"
        }
      ],
      "callPatterns": [
        "createBin2DData({ id, x, y, source?, bins?, extent?, includeEmpty?, members? })"
      ],
      "snippet": "program.createBin2DData({ id: \"bin2-d-data-1\", x: \"x\", y: \"y\" })",
      "errors": [],
      "route": "/reference/actions/charts-data/#createbin2ddata"
    },
    {
      "schemaVersion": 3,
      "name": "editBin2DData",
      "layer": "user-facing",
      "domain": "core",
      "summary": "Partially revise the current or unique logical 2D-bin owner.",
      "signature": "editBin2DData(options: EditBin2DDataOptions): ChartProgram;",
      "intents": [
        "edit bin2 d data",
        "edit",
        "change",
        "chart setup",
        "data and scales",
        "two-dimensional bins",
        "rectangular aggregation"
      ],
      "lifecycle": "Mutable resource",
      "resources": {
        "prerequisites": [
          "existing two-dimensional bins"
        ],
        "owns": [],
        "idOptions": [
          "target",
          "source"
        ]
      },
      "authoringRoles": [
        "H2"
      ],
      "wraps": [
        "createDerivedData",
        "editXAxisLine",
        "editXAxisTicks",
        "editXAxisLabels",
        "editXAxisTitle",
        "editYAxisLine",
        "editYAxisTicks",
        "editYAxisLabels",
        "editYAxisTitle"
      ],
      "editableVia": [
        "editBin2DData"
      ],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [],
      "inference": [
        {
          "input": "target",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "source",
          "strategy": "explicit-current-unique-or-error"
        }
      ],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "existing two-dimensional bins"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "target",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "source",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "x",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "y",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "bins",
          "required": false,
          "type": "number | Bin2DCounts | undefined"
        },
        {
          "name": "extent",
          "required": false,
          "type": "Bin2DExtent | undefined"
        },
        {
          "name": "includeEmpty",
          "required": false,
          "type": "boolean | undefined"
        },
        {
          "name": "members",
          "required": false,
          "type": "boolean | undefined"
        },
        {
          "name": "as",
          "required": false,
          "type": "DatasetBin2DOutputFields | undefined"
        },
        {
          "name": "dependents",
          "required": false,
          "type": "DerivedDataDependents | undefined"
        }
      ],
      "callPatterns": [
        "editBin2DData({ target?, source?, x?, y?, bins?, extent?, includeEmpty?, members? })"
      ],
      "snippet": "program.editBin2DData({ x: \"x\" })",
      "errors": [],
      "route": "/reference/actions/charts-data/#editbin2ddata"
    },
    {
      "schemaVersion": 3,
      "name": "editDerivedData",
      "layer": "user-facing",
      "domain": "core",
      "summary": "Edits derived dataset, including settings for stored transform provenance.",
      "signature": "editDerivedData(options: EditDerivedDataOptions): ChartProgram;",
      "intents": [
        "edit derived data",
        "edit",
        "change",
        "chart setup",
        "data and scales",
        "derived dataset",
        "stored transform provenance"
      ],
      "lifecycle": "Mutable resource",
      "resources": {
        "prerequisites": [
          "existing derived dataset",
          "source dataset"
        ],
        "owns": [],
        "idOptions": [
          "target"
        ]
      },
      "authoringRoles": [
        "H2"
      ],
      "wraps": [
        "createDerivedData"
      ],
      "editableVia": [
        "editDerivedData"
      ],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [],
      "inference": [
        {
          "input": "target",
          "strategy": "explicit"
        }
      ],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "existing derived dataset",
          "source dataset"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "target",
          "required": true,
          "type": "string"
        },
        {
          "name": "definition",
          "required": true,
          "type": "RequestedDatasetTransform"
        },
        {
          "name": "dependents",
          "required": false,
          "type": "DerivedDataDependents | undefined"
        }
      ],
      "callPatterns": [
        "editDerivedData({ target, definition, dependents? })"
      ],
      "snippet": "program.editDerivedData({ target: \"computed\", definition: { type: \"computed\", as: \"result\", expression: { field: \"value\" } } })",
      "errors": [],
      "route": "/reference/actions/charts-data/#editderiveddata"
    },
    {
      "schemaVersion": 3,
      "name": "editComputedData",
      "layer": "user-facing",
      "domain": "statistics",
      "summary": "Edits computed field, including settings for typed formula data.",
      "signature": "editComputedData(options: EditComputedDataOptions): ChartProgram;",
      "intents": [
        "edit computed data",
        "edit",
        "change",
        "statistical layer",
        "statistical transform",
        "computed field",
        "typed formula data"
      ],
      "lifecycle": "Mutable resource",
      "resources": {
        "prerequisites": [
          "existing computed field",
          "source dataset"
        ],
        "owns": [],
        "idOptions": [
          "target"
        ]
      },
      "authoringRoles": [
        "H1",
        "H3"
      ],
      "wraps": [
        "editDerivedData"
      ],
      "editableVia": [
        "editComputedData"
      ],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [],
      "inference": [
        {
          "input": "target",
          "strategy": "explicit"
        }
      ],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "existing computed field",
          "source dataset"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "target",
          "required": true,
          "type": "string"
        },
        {
          "name": "dependents",
          "required": false,
          "type": "DerivedDataDependents | undefined"
        },
        {
          "name": "as",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "expression",
          "required": false,
          "type": "ComputedExpression | undefined"
        }
      ],
      "callPatterns": [
        "editComputedData({ target, dependents?, as?, expression? })"
      ],
      "snippet": "program.editComputedData({ target: \"computed\", expression: { field: \"value\" } })",
      "errors": [],
      "route": "/reference/actions/statistics/#editcomputeddata"
    },
    {
      "schemaVersion": 3,
      "name": "editFilteredData",
      "layer": "user-facing",
      "domain": "core",
      "summary": "Edits filtered dataset, including settings for rows matching a predicate.",
      "signature": "editFilteredData(options: EditFilteredDataOptions): ChartProgram;",
      "intents": [
        "edit filtered data",
        "edit",
        "change",
        "chart setup",
        "data and scales",
        "filtered dataset",
        "rows matching a predicate"
      ],
      "lifecycle": "Mutable resource",
      "resources": {
        "prerequisites": [
          "existing filtered dataset",
          "source dataset"
        ],
        "owns": [],
        "idOptions": [
          "target"
        ]
      },
      "authoringRoles": [
        "H2"
      ],
      "wraps": [
        "editDerivedData"
      ],
      "editableVia": [
        "editFilteredData"
      ],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [],
      "inference": [
        {
          "input": "target",
          "strategy": "explicit"
        }
      ],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "existing filtered dataset",
          "source dataset"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "oneOf",
          "required": false,
          "type": "readonly [DatasetScalar, ...DatasetScalar[]] | undefined"
        },
        {
          "name": "noneOf",
          "required": false,
          "type": "readonly [DatasetScalar, ...DatasetScalar[]] | undefined"
        },
        {
          "name": "predicate",
          "required": false,
          "type": "FilterComparison | undefined"
        },
        {
          "name": "range",
          "required": false,
          "type": "FilterRangePatch | undefined"
        },
        {
          "name": "target",
          "required": true,
          "type": "string"
        },
        {
          "name": "field",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "nulls",
          "required": false,
          "type": "\"exclude\" | \"include\" | false | undefined"
        },
        {
          "name": "dependents",
          "required": false,
          "type": "DerivedDataDependents | undefined"
        }
      ],
      "callPatterns": [
        "editFilteredData({ target, oneOf?, noneOf?, predicate?, range?, field?, nulls?, dependents? })"
      ],
      "snippet": "program.editFilteredData({ target: \"filtered\", oneOf: [1] })",
      "errors": [],
      "route": "/reference/actions/charts-data/#editfiltereddata"
    },
    {
      "schemaVersion": 3,
      "name": "editFoldData",
      "layer": "user-facing",
      "domain": "statistics",
      "summary": "Edits wide to long data, including settings for key value rows.",
      "signature": "editFoldData(options: EditFoldDataOptions): ChartProgram;",
      "intents": [
        "edit fold data",
        "edit",
        "change",
        "statistical layer",
        "statistical transform",
        "wide to long data",
        "key value rows"
      ],
      "lifecycle": "Mutable resource",
      "resources": {
        "prerequisites": [
          "existing wide to long data",
          "source dataset"
        ],
        "owns": [],
        "idOptions": [
          "target"
        ]
      },
      "authoringRoles": [
        "H1",
        "H3"
      ],
      "wraps": [
        "editDerivedData"
      ],
      "editableVia": [
        "editFoldData"
      ],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [],
      "inference": [
        {
          "input": "target",
          "strategy": "explicit"
        }
      ],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "existing wide to long data",
          "source dataset"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "target",
          "required": true,
          "type": "string"
        },
        {
          "name": "dependents",
          "required": false,
          "type": "DerivedDataDependents | undefined"
        },
        {
          "name": "fields",
          "required": false,
          "type": "readonly string[] | undefined"
        },
        {
          "name": "as",
          "required": false,
          "type": "FoldDataOutputFields | undefined"
        }
      ],
      "callPatterns": [
        "editFoldData({ target, dependents?, fields?, as? })"
      ],
      "snippet": "program.editFoldData({ target: \"folded\", fields: [\"value\"] })",
      "errors": [],
      "route": "/reference/actions/statistics/#editfolddata"
    },
    {
      "schemaVersion": 3,
      "name": "editSummaryData",
      "layer": "user-facing",
      "domain": "statistics",
      "summary": "Edits grouped summary data, including settings for reusable aggregate rows.",
      "signature": "editSummaryData(options: EditSummaryDataOptions): ChartProgram;",
      "intents": [
        "edit summary data",
        "edit",
        "change",
        "statistical layer",
        "statistical transform",
        "grouped summary data",
        "reusable aggregate rows"
      ],
      "lifecycle": "Mutable resource",
      "resources": {
        "prerequisites": [
          "existing grouped summary data",
          "source dataset"
        ],
        "owns": [],
        "idOptions": [
          "target"
        ]
      },
      "authoringRoles": [
        "H1",
        "H3"
      ],
      "wraps": [
        "editDerivedData"
      ],
      "editableVia": [
        "editSummaryData"
      ],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [],
      "inference": [
        {
          "input": "target",
          "strategy": "explicit"
        }
      ],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "existing grouped summary data",
          "source dataset"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "target",
          "required": true,
          "type": "string"
        },
        {
          "name": "dependents",
          "required": false,
          "type": "DerivedDataDependents | undefined"
        },
        {
          "name": "groupBy",
          "required": false,
          "type": "string | readonly string[] | undefined"
        },
        {
          "name": "aggregates",
          "required": false,
          "type": "readonly SummaryAggregateOptions[] | undefined"
        },
        {
          "name": "members",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "missing",
          "required": false,
          "type": "\"drop\" | \"error\" | undefined"
        },
        {
          "name": "empty",
          "required": false,
          "type": "\"identity\" | \"null\" | undefined"
        },
        {
          "name": "weight",
          "required": false,
          "type": "false | StatisticalWeight | undefined"
        }
      ],
      "callPatterns": [
        "editSummaryData({ target, dependents?, groupBy?, aggregates?, members?, missing?, empty?, weight? })"
      ],
      "snippet": "program.editSummaryData({ target: \"summary\", aggregates: [{ op: \"count\", as: \"count\" }] })",
      "errors": [],
      "route": "/reference/actions/statistics/#editsummarydata"
    },
    {
      "schemaVersion": 3,
      "name": "editBinData",
      "layer": "user-facing",
      "domain": "statistics",
      "summary": "Edits one-dimensional bins, including settings for reusable histogram bounds and counts.",
      "signature": "editBinData(options: EditBinDataOptions): ChartProgram;",
      "intents": [
        "edit bin data",
        "edit",
        "change",
        "statistical layer",
        "statistical transform",
        "one-dimensional bins",
        "reusable histogram bounds and counts"
      ],
      "lifecycle": "Mutable resource",
      "resources": {
        "prerequisites": [
          "existing one-dimensional bins",
          "source dataset"
        ],
        "owns": [],
        "idOptions": [
          "target"
        ]
      },
      "authoringRoles": [
        "H1",
        "H3"
      ],
      "wraps": [
        "editDerivedData"
      ],
      "editableVia": [
        "editBinData"
      ],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [
        {
          "path": "maxBins",
          "unit": "count"
        }
      ],
      "inference": [
        {
          "input": "target",
          "strategy": "explicit"
        },
        {
          "input": "extent",
          "strategy": "documented-auto"
        }
      ],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "existing one-dimensional bins",
          "source dataset"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "target",
          "required": true,
          "type": "string"
        },
        {
          "name": "dependents",
          "required": false,
          "type": "DerivedDataDependents | undefined"
        },
        {
          "name": "maxBins",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "step",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "boundaries",
          "required": false,
          "type": "readonly [number, number, ...number[]] | undefined"
        },
        {
          "name": "field",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "extent",
          "required": false,
          "type": "\"auto\" | readonly [number, number] | undefined"
        },
        {
          "name": "nice",
          "required": false,
          "type": "boolean | undefined"
        },
        {
          "name": "zero",
          "required": false,
          "type": "boolean | undefined"
        },
        {
          "name": "includeEmpty",
          "required": false,
          "type": "boolean | undefined"
        },
        {
          "name": "members",
          "required": false,
          "type": "boolean | undefined"
        },
        {
          "name": "missing",
          "required": false,
          "type": "\"drop\" | \"error\" | undefined"
        },
        {
          "name": "as",
          "required": false,
          "type": "BinDataOutputFields | undefined"
        },
        {
          "name": "weight",
          "required": false,
          "type": "false | StatisticalWeight | undefined"
        }
      ],
      "callPatterns": [
        "editBinData({ target, dependents?, maxBins?, step?, boundaries?, field?, extent?, nice? })"
      ],
      "snippet": "program.editBinData({ target: \"bins\", maxBins: 12 })",
      "errors": [],
      "route": "/reference/actions/statistics/#editbindata"
    },
    {
      "schemaVersion": 3,
      "name": "editTimeUnitData",
      "layer": "user-facing",
      "domain": "core",
      "summary": "Edits date bucket, including settings for UTC time unit.",
      "signature": "editTimeUnitData(options: EditTimeUnitDataOptions): ChartProgram;",
      "intents": [
        "edit time unit data",
        "edit",
        "change",
        "chart setup",
        "data and scales",
        "date bucket",
        "UTC time unit"
      ],
      "lifecycle": "Mutable resource",
      "resources": {
        "prerequisites": [
          "existing date bucket",
          "source dataset"
        ],
        "owns": [],
        "idOptions": [
          "target"
        ]
      },
      "authoringRoles": [
        "H2"
      ],
      "wraps": [
        "editDerivedData"
      ],
      "editableVia": [
        "editTimeUnitData"
      ],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [
        {
          "path": "temporalUnit",
          "unit": "temporal-input"
        }
      ],
      "inference": [
        {
          "input": "target",
          "strategy": "explicit"
        }
      ],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "existing date bucket",
          "source dataset"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "target",
          "required": true,
          "type": "string"
        },
        {
          "name": "dependents",
          "required": false,
          "type": "DerivedDataDependents | undefined"
        },
        {
          "name": "field",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "temporalUnit",
          "required": false,
          "type": "TemporalInputUnit | undefined"
        },
        {
          "name": "as",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "timeZone",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "unit",
          "required": false,
          "type": "\"day\" | \"hour\" | \"minute\" | \"month\" | \"quarter\" | \"second\" | \"week\" | \"weekday\" | \"year\" | undefined"
        },
        {
          "name": "weekStartsOn",
          "required": false,
          "type": "0 | 1 | 2 | 3 | 4 | 5 | 6 | undefined"
        },
        {
          "name": "weekRule",
          "required": false,
          "type": "\"calendar\" | \"iso\" | undefined"
        }
      ],
      "callPatterns": [
        "editTimeUnitData({ target, dependents?, field?, temporalUnit?, as?, timeZone?, unit?, weekStartsOn? })"
      ],
      "snippet": "program.editTimeUnitData({ target: \"buckets\", unit: \"month\" })",
      "errors": [],
      "route": "/reference/actions/charts-data/#edittimeunitdata"
    },
    {
      "schemaVersion": 3,
      "name": "editWindowData",
      "layer": "user-facing",
      "domain": "core",
      "summary": "Edits moving window, including settings for rank.",
      "signature": "editWindowData(options: EditWindowDataOptions): ChartProgram;",
      "intents": [
        "edit window data",
        "edit",
        "change",
        "chart setup",
        "data and scales",
        "moving window",
        "rank"
      ],
      "lifecycle": "Mutable resource",
      "resources": {
        "prerequisites": [
          "existing moving window",
          "source dataset"
        ],
        "owns": [],
        "idOptions": [
          "target"
        ]
      },
      "authoringRoles": [
        "H2"
      ],
      "wraps": [
        "editDerivedData"
      ],
      "editableVia": [
        "editWindowData"
      ],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [
        {
          "path": "temporalUnit",
          "unit": "temporal-input"
        }
      ],
      "inference": [
        {
          "input": "target",
          "strategy": "explicit"
        }
      ],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "existing moving window",
          "source dataset"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "target",
          "required": true,
          "type": "string"
        },
        {
          "name": "dependents",
          "required": false,
          "type": "DerivedDataDependents | undefined"
        },
        {
          "name": "partitionBy",
          "required": false,
          "type": "string | readonly string[] | undefined"
        },
        {
          "name": "sortBy",
          "required": false,
          "type": "readonly WindowSort[] | undefined"
        },
        {
          "name": "operations",
          "required": false,
          "type": "readonly WindowOperation[] | undefined"
        },
        {
          "name": "temporalUnit",
          "required": false,
          "type": "TemporalInputUnit | undefined"
        }
      ],
      "callPatterns": [
        "editWindowData({ target, dependents?, partitionBy?, sortBy?, operations?, temporalUnit? })"
      ],
      "snippet": "program.editWindowData({ target: \"windowed\", operations: [{ op: \"rowNumber\", as: \"rowNumber\" }] })",
      "errors": [],
      "route": "/reference/actions/charts-data/#editwindowdata"
    },
    {
      "schemaVersion": 3,
      "name": "editDensityData",
      "layer": "user-facing",
      "domain": "core",
      "summary": "Edits kernel density data, including settings for KDE.",
      "signature": "editDensityData(options: EditDensityDataOptions): ChartProgram;",
      "intents": [
        "edit density data",
        "edit",
        "change",
        "chart setup",
        "data and scales",
        "kernel density data",
        "KDE"
      ],
      "lifecycle": "Mutable resource",
      "resources": {
        "prerequisites": [
          "existing kernel density data",
          "source dataset"
        ],
        "owns": [],
        "idOptions": [
          "target"
        ]
      },
      "authoringRoles": [
        "H2"
      ],
      "wraps": [
        "editDerivedData"
      ],
      "editableVia": [
        "editDensityData"
      ],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [
        {
          "path": "bandwidth",
          "unit": "data-value"
        },
        {
          "path": "steps",
          "unit": "count"
        }
      ],
      "inference": [
        {
          "input": "target",
          "strategy": "explicit"
        },
        {
          "input": "bandwidth",
          "strategy": "documented-auto"
        },
        {
          "input": "extent",
          "strategy": "documented-auto"
        }
      ],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "existing kernel density data",
          "source dataset"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "target",
          "required": true,
          "type": "string"
        },
        {
          "name": "dependents",
          "required": false,
          "type": "DerivedDataDependents | undefined"
        },
        {
          "name": "field",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "groupBy",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "bandwidth",
          "required": false,
          "type": "number | \"auto\" | undefined"
        },
        {
          "name": "extent",
          "required": false,
          "type": "\"auto\" | readonly [number, number] | undefined"
        },
        {
          "name": "steps",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "kernel",
          "required": false,
          "type": "DensityKernel | undefined"
        },
        {
          "name": "normalization",
          "required": false,
          "type": "DensityNormalization | undefined"
        },
        {
          "name": "missing",
          "required": false,
          "type": "\"drop\" | \"error\" | undefined"
        },
        {
          "name": "as",
          "required": false,
          "type": "readonly [string, string] | undefined"
        },
        {
          "name": "weight",
          "required": false,
          "type": "false | StatisticalWeight | undefined"
        }
      ],
      "callPatterns": [
        "editDensityData({ target, dependents?, field?, groupBy?, bandwidth?, extent?, steps?, kernel? })"
      ],
      "snippet": "program.editDensityData({ target: \"density\", steps: 64 })",
      "errors": [],
      "route": "/reference/actions/charts-data/#editdensitydata"
    },
    {
      "schemaVersion": 3,
      "name": "editStackData",
      "layer": "user-facing",
      "domain": "statistics",
      "summary": "Edits stacked data, including settings for reusable stack endpoints and shares.",
      "signature": "editStackData(options: EditStackDataOptions): ChartProgram;",
      "intents": [
        "edit stack data",
        "edit",
        "change",
        "statistical layer",
        "statistical transform",
        "stacked data",
        "reusable stack endpoints and shares"
      ],
      "lifecycle": "Mutable resource",
      "resources": {
        "prerequisites": [
          "existing stacked data",
          "source dataset"
        ],
        "owns": [],
        "idOptions": [
          "target"
        ]
      },
      "authoringRoles": [
        "H1",
        "H3"
      ],
      "wraps": [
        "editDerivedData"
      ],
      "editableVia": [
        "editStackData"
      ],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [],
      "inference": [
        {
          "input": "target",
          "strategy": "explicit"
        }
      ],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "existing stacked data",
          "source dataset"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "target",
          "required": true,
          "type": "string"
        },
        {
          "name": "dependents",
          "required": false,
          "type": "DerivedDataDependents | undefined"
        },
        {
          "name": "category",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "group",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "value",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "mode",
          "required": false,
          "type": "StackDataMode | undefined"
        },
        {
          "name": "as",
          "required": false,
          "type": "StackDataOutputFields | undefined"
        }
      ],
      "callPatterns": [
        "editStackData({ target, dependents?, category?, group?, value?, mode?, as? })"
      ],
      "snippet": "program.editStackData({ target: \"stacked\", mode: \"fill\" })",
      "errors": [],
      "route": "/reference/actions/statistics/#editstackdata"
    },
    {
      "schemaVersion": 3,
      "name": "editRegressionData",
      "layer": "user-facing",
      "domain": "core",
      "summary": "Edits fitted values, including settings for regression transform.",
      "signature": "editRegressionData(options: EditRegressionDataOptions): ChartProgram;",
      "intents": [
        "edit regression data",
        "edit",
        "change",
        "chart setup",
        "data and scales",
        "fitted values",
        "regression transform"
      ],
      "lifecycle": "Mutable resource",
      "resources": {
        "prerequisites": [
          "existing fitted values",
          "source dataset"
        ],
        "owns": [],
        "idOptions": [
          "target"
        ]
      },
      "authoringRoles": [
        "H2"
      ],
      "wraps": [
        "editDerivedData"
      ],
      "editableVia": [
        "editRegressionData"
      ],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [],
      "inference": [
        {
          "input": "target",
          "strategy": "explicit"
        }
      ],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "existing fitted values",
          "source dataset"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "target",
          "required": true,
          "type": "string"
        },
        {
          "name": "dependents",
          "required": false,
          "type": "DerivedDataDependents | undefined"
        },
        {
          "name": "method",
          "required": false,
          "type": "\"linear\" | \"loess\" | \"polynomial\" | undefined"
        },
        {
          "name": "degree",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "span",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "confidenceMethod",
          "required": false,
          "type": "ConfidenceIntervalMethod | undefined"
        },
        {
          "name": "level",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "confidence",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "interval",
          "required": false,
          "type": "false | RegressionInterval | undefined"
        },
        {
          "name": "predict",
          "required": false,
          "type": "RegressionPredictOptions | undefined"
        },
        {
          "name": "x",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "y",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "groupBy",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "missing",
          "required": false,
          "type": "\"drop\" | \"error\" | undefined"
        }
      ],
      "callPatterns": [
        "editRegressionData({ target, dependents?, method?, degree?, span?, confidenceMethod?, level?, confidence? })"
      ],
      "snippet": "program.editRegressionData({ target: \"regression\", method: \"loess\" })",
      "errors": [],
      "route": "/reference/actions/charts-data/#editregressiondata"
    },
    {
      "schemaVersion": 3,
      "name": "editIntervalData",
      "layer": "user-facing",
      "domain": "statistics",
      "summary": "Edits confidence interval data, including settings for summary interval.",
      "signature": "editIntervalData(options: EditIntervalDataOptions): ChartProgram;",
      "intents": [
        "edit interval data",
        "edit",
        "change",
        "statistical layer",
        "statistical transform",
        "confidence interval data",
        "summary interval"
      ],
      "lifecycle": "Mutable resource",
      "resources": {
        "prerequisites": [
          "existing confidence interval data",
          "source dataset"
        ],
        "owns": [],
        "idOptions": [
          "target"
        ]
      },
      "authoringRoles": [
        "H1",
        "H3"
      ],
      "wraps": [
        "editDerivedData"
      ],
      "editableVia": [
        "editIntervalData"
      ],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [],
      "inference": [
        {
          "input": "target",
          "strategy": "explicit"
        }
      ],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "existing confidence interval data",
          "source dataset"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "target",
          "required": true,
          "type": "string"
        },
        {
          "name": "dependents",
          "required": false,
          "type": "DerivedDataDependents | undefined"
        },
        {
          "name": "field",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "groupBy",
          "required": false,
          "type": "string | readonly string[] | undefined"
        },
        {
          "name": "center",
          "required": false,
          "type": "IntervalCenter | undefined"
        },
        {
          "name": "extent",
          "required": false,
          "type": "IntervalExtent | undefined"
        },
        {
          "name": "method",
          "required": false,
          "type": "ConfidenceIntervalMethod | undefined"
        },
        {
          "name": "level",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "missing",
          "required": false,
          "type": "\"drop\" | \"error\" | undefined"
        },
        {
          "name": "as",
          "required": false,
          "type": "IntervalOutputFields | undefined"
        }
      ],
      "callPatterns": [
        "editIntervalData({ target, dependents?, field?, groupBy?, center?, extent?, method?, level? })"
      ],
      "snippet": "program.editIntervalData({ target: \"interval\", center: \"median\", extent: \"iqr\" })",
      "errors": [],
      "route": "/reference/actions/statistics/#editintervaldata"
    },
    {
      "schemaVersion": 3,
      "name": "editECDFData",
      "layer": "user-facing",
      "domain": "statistics",
      "summary": "Edits empirical cumulative distribution data, including settings for sorted cumulative probabilities.",
      "signature": "editECDFData(options: EditECDFDataOptions): ChartProgram;",
      "intents": [
        "edit ecdf data",
        "edit",
        "change",
        "statistical layer",
        "statistical transform",
        "empirical cumulative distribution data",
        "sorted cumulative probabilities"
      ],
      "lifecycle": "Mutable resource",
      "resources": {
        "prerequisites": [
          "existing empirical cumulative distribution data",
          "source dataset"
        ],
        "owns": [],
        "idOptions": [
          "target"
        ]
      },
      "authoringRoles": [
        "H1",
        "H3"
      ],
      "wraps": [
        "editDerivedData"
      ],
      "editableVia": [
        "editECDFData"
      ],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [],
      "inference": [
        {
          "input": "target",
          "strategy": "explicit"
        }
      ],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "existing empirical cumulative distribution data",
          "source dataset"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "target",
          "required": true,
          "type": "string"
        },
        {
          "name": "dependents",
          "required": false,
          "type": "DerivedDataDependents | undefined"
        },
        {
          "name": "field",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "groupBy",
          "required": false,
          "type": "string | readonly [string, ...string[]] | undefined"
        },
        {
          "name": "missing",
          "required": false,
          "type": "\"drop\" | \"error\" | undefined"
        },
        {
          "name": "as",
          "required": false,
          "type": "ECDFOutputFields | undefined"
        },
        {
          "name": "weight",
          "required": false,
          "type": "string | false | undefined"
        }
      ],
      "callPatterns": [
        "editECDFData({ target, dependents?, field?, groupBy?, missing?, as?, weight? })"
      ],
      "snippet": "program.editECDFData({ target: \"ecdf\", missing: \"error\" })",
      "errors": [],
      "route": "/reference/actions/statistics/#editecdfdata"
    },
    {
      "schemaVersion": 3,
      "name": "editNormalizedData",
      "layer": "user-facing",
      "domain": "statistics",
      "summary": "Edits normalized data, including settings for group shares and baseline comparisons.",
      "signature": "editNormalizedData(options: EditNormalizedDataOptions): ChartProgram;",
      "intents": [
        "edit normalized data",
        "edit",
        "change",
        "statistical layer",
        "statistical transform",
        "normalized data",
        "group shares and baseline comparisons"
      ],
      "lifecycle": "Mutable resource",
      "resources": {
        "prerequisites": [
          "existing normalized data",
          "source dataset"
        ],
        "owns": [],
        "idOptions": [
          "target"
        ]
      },
      "authoringRoles": [
        "H1",
        "H3"
      ],
      "wraps": [
        "editDerivedData"
      ],
      "editableVia": [
        "editNormalizedData"
      ],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [],
      "inference": [
        {
          "input": "target",
          "strategy": "explicit"
        }
      ],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "existing normalized data",
          "source dataset"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "target",
          "required": true,
          "type": "string"
        },
        {
          "name": "dependents",
          "required": false,
          "type": "DerivedDataDependents | undefined"
        },
        {
          "name": "field",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "as",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "groupBy",
          "required": false,
          "type": "string | readonly string[] | undefined"
        },
        {
          "name": "method",
          "required": false,
          "type": "\"change\" | \"index\" | \"minmax\" | \"percentChange\" | \"share\" | \"zscore\" | undefined"
        },
        {
          "name": "zeroDenominator",
          "required": false,
          "type": "NormalizeZeroDenominator | undefined"
        },
        {
          "name": "variance",
          "required": false,
          "type": "\"population\" | \"sample\" | undefined"
        },
        {
          "name": "baseline",
          "required": false,
          "type": "{ position: \"first\" | \"last\"; } | undefined"
        },
        {
          "name": "sortBy",
          "required": false,
          "type": "readonly [WindowSort, ...WindowSort[]] | undefined"
        }
      ],
      "callPatterns": [
        "editNormalizedData({ target, dependents?, field?, as?, groupBy?, method?, zeroDenominator?, variance? })"
      ],
      "snippet": "program.editNormalizedData({ target: \"normalized\", method: \"minmax\" })",
      "errors": [],
      "route": "/reference/actions/statistics/#editnormalizeddata"
    },
    {
      "schemaVersion": 3,
      "name": "editSortedData",
      "layer": "user-facing",
      "domain": "statistics",
      "summary": "Edits sorted dataset, including settings for stable multi-key row order.",
      "signature": "editSortedData(options: EditSortedDataOptions): ChartProgram;",
      "intents": [
        "edit sorted data",
        "edit",
        "change",
        "statistical layer",
        "statistical transform",
        "sorted dataset",
        "stable multi-key row order"
      ],
      "lifecycle": "Mutable resource",
      "resources": {
        "prerequisites": [
          "existing sorted dataset",
          "source dataset"
        ],
        "owns": [],
        "idOptions": [
          "target"
        ]
      },
      "authoringRoles": [
        "H1",
        "H3"
      ],
      "wraps": [
        "editDerivedData"
      ],
      "editableVia": [
        "editSortedData"
      ],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [],
      "inference": [
        {
          "input": "target",
          "strategy": "explicit"
        }
      ],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "existing sorted dataset",
          "source dataset"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "target",
          "required": true,
          "type": "string"
        },
        {
          "name": "sortBy",
          "required": true,
          "type": "readonly [SortKey, ...SortKey[]]"
        },
        {
          "name": "dependents",
          "required": false,
          "type": "DerivedDataDependents | undefined"
        }
      ],
      "callPatterns": [
        "editSortedData({ target, sortBy, dependents? })"
      ],
      "snippet": "program.editSortedData({ target: \"sorted\", sortBy: [{ field: \"value\" }] })",
      "errors": [],
      "route": "/reference/actions/statistics/#editsorteddata"
    },
    {
      "schemaVersion": 3,
      "name": "editCompleteData",
      "layer": "user-facing",
      "domain": "statistics",
      "summary": "Edits completed data, including settings for explicit key-domain rows.",
      "signature": "editCompleteData(options: EditCompleteDataOptions): ChartProgram;",
      "intents": [
        "edit complete data",
        "edit",
        "change",
        "statistical layer",
        "statistical transform",
        "completed data",
        "explicit key-domain rows"
      ],
      "lifecycle": "Mutable resource",
      "resources": {
        "prerequisites": [
          "existing completed data",
          "source dataset"
        ],
        "owns": [],
        "idOptions": [
          "target"
        ]
      },
      "authoringRoles": [
        "H1",
        "H3"
      ],
      "wraps": [
        "editDerivedData"
      ],
      "editableVia": [
        "editCompleteData"
      ],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [],
      "inference": [
        {
          "input": "target",
          "strategy": "explicit"
        }
      ],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "existing completed data",
          "source dataset"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "target",
          "required": true,
          "type": "string"
        },
        {
          "name": "dependents",
          "required": false,
          "type": "DerivedDataDependents | undefined"
        },
        {
          "name": "key",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "groupBy",
          "required": false,
          "type": "string | readonly string[] | undefined"
        },
        {
          "name": "fill",
          "required": false,
          "type": "Readonly<Record<string, DatasetScalar>> | undefined"
        },
        {
          "name": "members",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "values",
          "required": false,
          "type": "readonly [DatasetScalar, ...DatasetScalar[]] | undefined"
        },
        {
          "name": "sequence",
          "required": false,
          "type": "{ start: number; end: number; step: number; } | undefined"
        }
      ],
      "callPatterns": [
        "editCompleteData({ target, dependents?, key?, groupBy?, fill?, members?, values?, sequence? })"
      ],
      "snippet": "program.editCompleteData({ target: \"complete\", values: [1, 2] })",
      "errors": [],
      "route": "/reference/actions/statistics/#editcompletedata"
    },
    {
      "schemaVersion": 3,
      "name": "editImputedData",
      "layer": "user-facing",
      "domain": "statistics",
      "summary": "Edits imputed data, including settings for filled missing values.",
      "signature": "editImputedData(options: EditImputedDataOptions): ChartProgram;",
      "intents": [
        "edit imputed data",
        "edit",
        "change",
        "statistical layer",
        "statistical transform",
        "imputed data",
        "filled missing values"
      ],
      "lifecycle": "Mutable resource",
      "resources": {
        "prerequisites": [
          "existing imputed data",
          "source dataset"
        ],
        "owns": [],
        "idOptions": [
          "target"
        ]
      },
      "authoringRoles": [
        "H1",
        "H3"
      ],
      "wraps": [
        "editDerivedData"
      ],
      "editableVia": [
        "editImputedData"
      ],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [],
      "inference": [
        {
          "input": "target",
          "strategy": "explicit"
        }
      ],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "existing imputed data",
          "source dataset"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "target",
          "required": true,
          "type": "string"
        },
        {
          "name": "dependents",
          "required": false,
          "type": "DerivedDataDependents | undefined"
        },
        {
          "name": "fields",
          "required": false,
          "type": "string | readonly [string, ...string[]] | undefined"
        },
        {
          "name": "groupBy",
          "required": false,
          "type": "string | readonly string[] | undefined"
        },
        {
          "name": "edges",
          "required": false,
          "type": "\"error\" | \"keep\" | undefined"
        },
        {
          "name": "maxGap",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "method",
          "required": false,
          "type": "\"backward\" | \"constant\" | \"forward\" | \"linear\" | undefined"
        },
        {
          "name": "value",
          "required": false,
          "type": "DatasetScalar | undefined"
        },
        {
          "name": "sortBy",
          "required": false,
          "type": "readonly WindowSort[] | readonly [{ field: string; order?: \"ascending\" | undefined; }] | readonly [WindowSort, ...WindowSort[]] | undefined"
        }
      ],
      "callPatterns": [
        "editImputedData({ target, dependents?, fields?, groupBy?, edges?, maxGap?, method?, value? })"
      ],
      "snippet": "program.editImputedData({ target: \"imputed\", value: 0 })",
      "errors": [],
      "route": "/reference/actions/statistics/#editimputeddata"
    },
    {
      "schemaVersion": 3,
      "name": "createIntervalData",
      "layer": "user-facing",
      "domain": "statistics",
      "summary": "Create immutable grouped center/lower/upper summary rows.",
      "signature": "createIntervalData(options: IntervalDataOptions): ChartProgram;",
      "intents": [
        "create interval data",
        "create",
        "add",
        "statistical layer",
        "statistical transform",
        "confidence interval data",
        "summary interval"
      ],
      "lifecycle": "Mutable resource",
      "resources": {
        "prerequisites": [
          "source dataset"
        ],
        "owns": [
          "confidence interval data"
        ],
        "idOptions": [
          "id",
          "source"
        ]
      },
      "authoringRoles": [
        "H1"
      ],
      "wraps": [
        "createDerivedData"
      ],
      "editableVia": [
        "editIntervalData"
      ],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [],
      "inference": [
        {
          "input": "source",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "omitted optional options",
          "strategy": "documented-default"
        }
      ],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "source dataset"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "id",
          "required": true,
          "type": "string"
        },
        {
          "name": "source",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "field",
          "required": true,
          "type": "string"
        },
        {
          "name": "groupBy",
          "required": false,
          "type": "string | readonly string[] | undefined"
        },
        {
          "name": "center",
          "required": false,
          "type": "IntervalCenter | undefined"
        },
        {
          "name": "extent",
          "required": false,
          "type": "IntervalExtent | undefined"
        },
        {
          "name": "method",
          "required": false,
          "type": "ConfidenceIntervalMethod | undefined"
        },
        {
          "name": "level",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "missing",
          "required": false,
          "type": "\"drop\" | \"error\" | undefined"
        },
        {
          "name": "as",
          "required": false,
          "type": "IntervalOutputFields | undefined"
        }
      ],
      "callPatterns": [
        "createIntervalData({ id, field, source?, groupBy?, center?, extent?, method?, level? })"
      ],
      "snippet": "program.createIntervalData({ id: \"interval-data-1\", field: \"value\" })",
      "errors": [],
      "route": "/reference/actions/statistics/#createintervaldata"
    },
    {
      "schemaVersion": 3,
      "name": "createECDFData",
      "layer": "user-facing",
      "domain": "statistics",
      "summary": "Create immutable sorted support, cumulative count or weight, and probability rows.",
      "signature": "createECDFData(options: ECDFDataOptions): ChartProgram;",
      "intents": [
        "create ecdf data",
        "create",
        "add",
        "statistical layer",
        "statistical transform",
        "empirical cumulative distribution data",
        "sorted cumulative probabilities"
      ],
      "lifecycle": "Mutable resource",
      "resources": {
        "prerequisites": [
          "source dataset"
        ],
        "owns": [
          "empirical cumulative distribution data"
        ],
        "idOptions": [
          "id",
          "source"
        ]
      },
      "authoringRoles": [
        "H1"
      ],
      "wraps": [
        "createDerivedData"
      ],
      "editableVia": [
        "editECDFData"
      ],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [],
      "inference": [
        {
          "input": "source",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "omitted optional options",
          "strategy": "documented-default"
        }
      ],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "source dataset"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "id",
          "required": true,
          "type": "string"
        },
        {
          "name": "source",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "field",
          "required": true,
          "type": "string"
        },
        {
          "name": "groupBy",
          "required": false,
          "type": "string | readonly [string, ...string[]] | undefined"
        },
        {
          "name": "weight",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "missing",
          "required": false,
          "type": "\"drop\" | \"error\" | undefined"
        },
        {
          "name": "as",
          "required": false,
          "type": "ECDFOutputFields | undefined"
        }
      ],
      "callPatterns": [
        "createECDFData({ id, field, source?, groupBy?, weight?, missing?, as? })"
      ],
      "snippet": "program.createECDFData({ id: \"ecdf-data-1\", field: \"value\" })",
      "errors": [],
      "route": "/reference/actions/statistics/#createecdfdata"
    },
    {
      "schemaVersion": 3,
      "name": "createPointMark",
      "layer": "user-facing",
      "domain": "marks",
      "summary": "Create a semantic point mark with one of 12 equal-area shape realizations.",
      "signature": "createPointMark(options?: StrokeStyleDetails & { id?: string; data?: string; missing?: \"error\" | \"skip\"; shape?: PointShape; fill?: string; opacity?: number; stroke?: FilledMarkStroke; strokeWidth?: number; }): ChartProgram;",
      "intents": [
        "create point mark",
        "create",
        "add",
        "graphical mark",
        "mark appearance",
        "point mark",
        "scatter point"
      ],
      "lifecycle": "Mutable resource",
      "resources": {
        "prerequisites": [
          "dataset and coordinate context"
        ],
        "owns": [
          "point mark"
        ],
        "idOptions": [
          "id",
          "data"
        ]
      },
      "authoringRoles": [
        "H2"
      ],
      "wraps": [
        "editSemantic",
        "createGraphics",
        "editPointMark"
      ],
      "editableVia": [
        "editPointMark"
      ],
      "supports": {
        "entryPoints": [
          "default",
          "basic"
        ]
      },
      "units": [
        {
          "path": "opacity",
          "unit": "probability"
        },
        {
          "path": "strokeWidth",
          "unit": "logical-pixel"
        }
      ],
      "inference": [
        {
          "input": "data",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "omitted optional options",
          "strategy": "documented-default"
        }
      ],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "dataset and coordinate context"
        ],
        "allowsEmpty": true
      },
      "options": [
        {
          "name": "lineCap",
          "required": false,
          "type": "\"butt\" | \"round\" | \"square\" | undefined"
        },
        {
          "name": "lineJoin",
          "required": false,
          "type": "\"bevel\" | \"miter\" | \"round\" | undefined"
        },
        {
          "name": "miterLimit",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "id",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "data",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "missing",
          "required": false,
          "type": "\"error\" | \"skip\" | undefined"
        },
        {
          "name": "shape",
          "required": false,
          "type": "PointShape | undefined"
        },
        {
          "name": "fill",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "opacity",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "stroke",
          "required": false,
          "type": "FilledMarkStroke | undefined"
        },
        {
          "name": "strokeWidth",
          "required": false,
          "type": "number | undefined"
        }
      ],
      "callPatterns": [
        "createPointMark({ id?, data?, lineCap?, lineJoin?, miterLimit?, missing?, shape?, fill? })"
      ],
      "snippet": "program.createPointMark({})",
      "errors": [],
      "route": "/reference/actions/marks/#createpointmark"
    },
    {
      "schemaVersion": 3,
      "name": "createTickMark",
      "layer": "user-facing",
      "domain": "marks",
      "summary": "Creates short tick glyphs for compact one-dimensional distributions or aligned value marks.",
      "signature": "createTickMark(options?: StrokeStyleDetails & { id?: string; data?: string; missing?: \"error\" | \"skip\"; length?: number; stroke?: string; strokeWidth?: number; opacity?: number; }): ChartProgram;",
      "intents": [
        "create tick mark",
        "create",
        "add",
        "graphical mark",
        "mark appearance",
        "tick mark",
        "one-dimensional distribution"
      ],
      "lifecycle": "Mutable resource",
      "resources": {
        "prerequisites": [
          "dataset and coordinate context"
        ],
        "owns": [
          "tick mark"
        ],
        "idOptions": [
          "id",
          "data"
        ]
      },
      "authoringRoles": [
        "H2"
      ],
      "wraps": [
        "editSemantic",
        "createGraphics",
        "editTickMark"
      ],
      "editableVia": [
        "editTickMark",
        "removeMark"
      ],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [
        {
          "path": "length",
          "unit": "logical-pixel"
        },
        {
          "path": "strokeWidth",
          "unit": "logical-pixel"
        },
        {
          "path": "opacity",
          "unit": "probability"
        }
      ],
      "inference": [
        {
          "input": "data",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "omitted optional options",
          "strategy": "documented-default"
        }
      ],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "dataset and coordinate context"
        ],
        "allowsEmpty": true
      },
      "options": [
        {
          "name": "lineCap",
          "required": false,
          "type": "\"butt\" | \"round\" | \"square\" | undefined"
        },
        {
          "name": "lineJoin",
          "required": false,
          "type": "\"bevel\" | \"miter\" | \"round\" | undefined"
        },
        {
          "name": "miterLimit",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "id",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "data",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "missing",
          "required": false,
          "type": "\"error\" | \"skip\" | undefined"
        },
        {
          "name": "length",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "stroke",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "strokeWidth",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "opacity",
          "required": false,
          "type": "number | undefined"
        }
      ],
      "callPatterns": [
        "createTickMark({ id?, data?, lineCap?, lineJoin?, miterLimit?, missing?, length?, stroke? })"
      ],
      "snippet": "program.createTickMark({})",
      "errors": [],
      "route": "/reference/actions/marks/#createtickmark"
    },
    {
      "schemaVersion": 3,
      "name": "createReferenceLine",
      "layer": "user-facing",
      "domain": "marks",
      "summary": "Create one constant Rule spanning the other plot axis.",
      "signature": "createReferenceLine(options: CreateReferenceLineOptions): ChartProgram;",
      "intents": [
        "create reference line",
        "create",
        "add",
        "graphical mark",
        "mark appearance",
        "reference line",
        "threshold"
      ],
      "lifecycle": "Aggregate create-only",
      "resources": {
        "prerequisites": [
          "dataset and coordinate context"
        ],
        "owns": [
          "reference line"
        ],
        "idOptions": [
          "id",
          "source",
          "data",
          "coordinate"
        ]
      },
      "authoringRoles": [
        "H1",
        "H2"
      ],
      "wraps": [
        "createRuleMark",
        "encodeY"
      ],
      "editableVia": [
        "editRuleMark",
        "editRectMark",
        "editScale",
        "removeMark"
      ],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [
        {
          "path": "temporalUnit",
          "unit": "temporal-input"
        },
        {
          "path": "strokeWidth",
          "unit": "logical-pixel"
        },
        {
          "path": "opacity",
          "unit": "probability"
        }
      ],
      "inference": [
        {
          "input": "source",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "data",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "coordinate",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "omitted optional options",
          "strategy": "documented-default"
        }
      ],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "dataset and coordinate context"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "id",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "source",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "x",
          "required": false,
          "type": "unknown"
        },
        {
          "name": "y",
          "required": false,
          "type": "unknown"
        },
        {
          "name": "space",
          "required": false,
          "type": "\"data\" | \"plot\" | undefined"
        },
        {
          "name": "data",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "coordinate",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "temporalUnit",
          "required": false,
          "type": "TemporalInputUnit | undefined"
        },
        {
          "name": "stroke",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "strokeWidth",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "strokeDash",
          "required": false,
          "type": "DashPattern | DashStyle | undefined"
        },
        {
          "name": "opacity",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "lineCap",
          "required": false,
          "type": "\"butt\" | \"round\" | \"square\" | undefined"
        },
        {
          "name": "lineJoin",
          "required": false,
          "type": "\"bevel\" | \"miter\" | \"round\" | undefined"
        },
        {
          "name": "miterLimit",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "axis",
          "required": false,
          "type": "\"x\" | \"y\""
        },
        {
          "name": "population",
          "required": false,
          "type": "\"boundData\" | \"visibleItems\" | undefined"
        },
        {
          "name": "field",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "statistic",
          "required": false,
          "type": "ReferenceStatistic"
        }
      ],
      "callPatterns": [
        "createReferenceLine({ y: 5 })",
        "createReferenceLine({ space: \"plot\", x: 0.5 })"
      ],
      "snippet": "program.createReferenceLine({ y: 5 })",
      "errors": [],
      "route": "/reference/actions/marks/#createreferenceline"
    },
    {
      "schemaVersion": 3,
      "name": "createReferenceBand",
      "layer": "user-facing",
      "domain": "marks",
      "summary": "Create one constant Rect spanning the other plot axis.",
      "signature": "createReferenceBand(options: CreateReferenceBandOptions): ChartProgram;",
      "intents": [
        "create reference band",
        "create",
        "add",
        "graphical mark",
        "mark appearance",
        "reference band",
        "target interval"
      ],
      "lifecycle": "Aggregate create-only",
      "resources": {
        "prerequisites": [
          "dataset and coordinate context"
        ],
        "owns": [
          "reference band"
        ],
        "idOptions": [
          "id",
          "source",
          "data",
          "coordinate"
        ]
      },
      "authoringRoles": [
        "H1",
        "H2"
      ],
      "wraps": [
        "createRectMark",
        "encodeX",
        "encodeX2"
      ],
      "editableVia": [
        "editRuleMark",
        "editRectMark",
        "editScale",
        "removeMark"
      ],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [
        {
          "path": "temporalUnit",
          "unit": "temporal-input"
        },
        {
          "path": "opacity",
          "unit": "probability"
        },
        {
          "path": "strokeWidth",
          "unit": "logical-pixel"
        }
      ],
      "inference": [
        {
          "input": "source",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "data",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "coordinate",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "omitted optional options",
          "strategy": "documented-default"
        }
      ],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "dataset and coordinate context"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "id",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "source",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "x",
          "required": false,
          "type": "readonly [unknown, unknown] | readonly [number, number] | undefined"
        },
        {
          "name": "y",
          "required": false,
          "type": "readonly [unknown, unknown] | readonly [number, number] | undefined"
        },
        {
          "name": "space",
          "required": false,
          "type": "\"data\" | \"plot\" | undefined"
        },
        {
          "name": "data",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "coordinate",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "temporalUnit",
          "required": false,
          "type": "TemporalInputUnit | undefined"
        },
        {
          "name": "lineCap",
          "required": false,
          "type": "\"butt\" | \"round\" | \"square\" | undefined"
        },
        {
          "name": "lineJoin",
          "required": false,
          "type": "\"bevel\" | \"miter\" | \"round\" | undefined"
        },
        {
          "name": "miterLimit",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "cornerRadius",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "missing",
          "required": false,
          "type": "\"error\" | \"skip\" | undefined"
        },
        {
          "name": "fill",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "opacity",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "stroke",
          "required": false,
          "type": "string | false | undefined"
        },
        {
          "name": "strokeWidth",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "axis",
          "required": false,
          "type": "\"x\" | \"y\""
        },
        {
          "name": "population",
          "required": false,
          "type": "\"boundData\" | \"visibleItems\" | undefined"
        },
        {
          "name": "field",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "statistics",
          "required": false,
          "type": "readonly [ReferenceStatistic, ReferenceStatistic]"
        }
      ],
      "callPatterns": [
        "createReferenceBand({ x: [2, 6] })",
        "createReferenceBand({ space: \"plot\", y: [0.2, 0.8] })"
      ],
      "snippet": "program.createReferenceBand({ x: [2, 6] })",
      "errors": [],
      "route": "/reference/actions/marks/#createreferenceband"
    },
    {
      "schemaVersion": 3,
      "name": "createMarkLabels",
      "layer": "user-facing",
      "domain": "marks",
      "summary": "Create final-item labels on an existing mark through text creation, encoding, and optional collision layout.",
      "signature": "createMarkLabels(options?: CreateMarkLabelsOptions): ChartProgram;",
      "intents": [
        "create mark labels",
        "create",
        "add",
        "graphical mark",
        "mark appearance",
        "mark labels",
        "final-item values"
      ],
      "lifecycle": "Aggregate create-only",
      "resources": {
        "prerequisites": [
          "dataset and coordinate context"
        ],
        "owns": [
          "mark labels"
        ],
        "idOptions": [
          "id",
          "source",
          "selection"
        ]
      },
      "authoringRoles": [
        "H1",
        "H2"
      ],
      "wraps": [
        "createTextMark",
        "encodeText"
      ],
      "editableVia": [
        "editMarkLabelSelection",
        "editMarkLabelPlacement",
        "removeMarkLabels"
      ],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [
        {
          "path": "placement.gap",
          "unit": "logical-pixel"
        },
        {
          "path": "placement.leader.strokeWidth",
          "unit": "logical-pixel"
        },
        {
          "path": "opacity",
          "unit": "probability"
        },
        {
          "path": "fontSize",
          "unit": "logical-pixel"
        },
        {
          "path": "rotation",
          "unit": "angle"
        }
      ],
      "inference": [
        {
          "input": "source",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "selection",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "omitted optional options",
          "strategy": "documented-default"
        }
      ],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "dataset and coordinate context"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "id",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "source",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "missing",
          "required": false,
          "type": "\"error\" | \"skip\" | undefined"
        },
        {
          "name": "fill",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "opacity",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "fontSize",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "fontFamily",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "fontWeight",
          "required": false,
          "type": "string | number | undefined"
        },
        {
          "name": "align",
          "required": false,
          "type": "\"center\" | \"end\" | \"left\" | \"right\" | \"start\" | undefined"
        },
        {
          "name": "baseline",
          "required": false,
          "type": "\"alphabetic\" | \"bottom\" | \"hanging\" | \"ideographic\" | \"middle\" | \"top\" | undefined"
        },
        {
          "name": "rotation",
          "required": false,
          "type": "RotationInput | undefined"
        },
        {
          "name": "dx",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "dy",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "layout",
          "required": false,
          "type": "false | Omit<LabelLayoutOptions, \"target\"> | undefined"
        },
        {
          "name": "placement",
          "required": false,
          "type": "MarkLabelPlacement | undefined"
        },
        {
          "name": "format",
          "required": false,
          "type": "ValueFormat | undefined"
        },
        {
          "name": "field",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "value",
          "required": false,
          "type": "unknown"
        },
        {
          "name": "content",
          "required": false,
          "type": "\"category\" | \"share\" | \"value\" | undefined"
        },
        {
          "name": "normalizeBy",
          "required": false,
          "type": "\"category\" | \"source\" | undefined"
        },
        {
          "name": "select",
          "required": false,
          "type": "MarkSelector | undefined"
        },
        {
          "name": "selection",
          "required": false,
          "type": "string | undefined"
        }
      ],
      "callPatterns": [
        "createMarkLabels()",
        "createMarkLabels({ source?, content?, select? | selection?, placement?, format?, layout? })"
      ],
      "snippet": "program.createMarkLabels({})",
      "errors": [],
      "route": "/reference/actions/marks/#createmarklabels"
    },
    {
      "schemaVersion": 3,
      "name": "editMarkLabelSelection",
      "layer": "user-facing",
      "domain": "marks",
      "summary": "Replace one attached label layer's final-item membership.",
      "signature": "editMarkLabelSelection(options: EditMarkLabelSelectionOptions): ChartProgram;",
      "intents": [
        "edit mark label selection",
        "edit",
        "change",
        "graphical mark",
        "mark appearance",
        "selected mark labels",
        "label membership"
      ],
      "lifecycle": "Mutable resource",
      "resources": {
        "prerequisites": [
          "attached label"
        ],
        "owns": [],
        "idOptions": [
          "target",
          "selection"
        ]
      },
      "authoringRoles": [
        "H3"
      ],
      "wraps": [],
      "editableVia": [
        "editMarkLabelSelection",
        "editMarkLabelPlacement",
        "removeMarkLabels"
      ],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [],
      "inference": [
        {
          "input": "target",
          "strategy": "explicit"
        },
        {
          "input": "selection",
          "strategy": "explicit"
        }
      ],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "attached label"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "target",
          "required": true,
          "type": "string"
        },
        {
          "name": "select",
          "required": false,
          "type": "MarkSelector | undefined"
        },
        {
          "name": "selection",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "all",
          "required": false,
          "type": "true | undefined"
        }
      ],
      "callPatterns": [
        "editMarkLabelSelection({ target, select | selection | all: true })"
      ],
      "snippet": "program.editMarkLabelSelection({ target: \"labels\", all: true })",
      "errors": [],
      "route": "/reference/actions/marks/#editmarklabelselection"
    },
    {
      "schemaVersion": 3,
      "name": "editMarkLabelPlacement",
      "layer": "user-facing",
      "domain": "marks",
      "summary": "Replace semantic placement for one attached label layer.",
      "signature": "editMarkLabelPlacement(options: EditMarkLabelPlacementOptions): ChartProgram;",
      "intents": [
        "edit mark label placement",
        "edit",
        "change",
        "graphical mark",
        "mark appearance",
        "semantic mark label placement",
        "inside or outside label anchors"
      ],
      "lifecycle": "Mutable resource",
      "resources": {
        "prerequisites": [
          "attached label with a supported source geometry"
        ],
        "owns": [],
        "idOptions": [
          "target"
        ]
      },
      "authoringRoles": [
        "H3"
      ],
      "wraps": [],
      "editableVia": [
        "editMarkLabelPlacement",
        "removeMarkLabels"
      ],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [
        {
          "path": "placement.gap",
          "unit": "logical-pixel"
        },
        {
          "path": "placement.leader.strokeWidth",
          "unit": "logical-pixel"
        }
      ],
      "inference": [
        {
          "input": "target",
          "strategy": "explicit"
        },
        {
          "input": "placement",
          "strategy": "documented-auto"
        }
      ],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "attached label with a supported source geometry"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "target",
          "required": true,
          "type": "string"
        },
        {
          "name": "placement",
          "required": true,
          "type": "\"auto\" | MarkLabelPlacement"
        }
      ],
      "callPatterns": [
        "editMarkLabelPlacement({ target, placement: anchor policy | auto })"
      ],
      "snippet": "program.editMarkLabelPlacement({ target: \"labels\", placement: { anchor: \"outsideEnd\", gap: 4 } })",
      "errors": [],
      "route": "/reference/actions/marks/#editmarklabelplacement"
    },
    {
      "schemaVersion": 3,
      "name": "removeMarkLabels",
      "layer": "user-facing",
      "domain": "marks",
      "summary": "Remove one attached label layer by ID, or every attached label owned by a source mark.",
      "signature": "removeMarkLabels(options: RemoveMarkLabelsOptions): ChartProgram;",
      "intents": [
        "remove mark labels",
        "remove",
        "delete",
        "graphical mark",
        "mark appearance",
        "mark labels",
        "final-item values"
      ],
      "lifecycle": "Mutable resource",
      "resources": {
        "prerequisites": [
          "existing source mark or attached label"
        ],
        "owns": [],
        "idOptions": [
          "target",
          "source"
        ]
      },
      "authoringRoles": [
        "H3"
      ],
      "wraps": [
        "editGraphics",
        "editSemantic"
      ],
      "editableVia": [],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [],
      "inference": [
        {
          "input": "target",
          "strategy": "explicit"
        },
        {
          "input": "source",
          "strategy": "explicit"
        }
      ],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "existing source mark or attached label"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "target",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "source",
          "required": false,
          "type": "string | undefined"
        }
      ],
      "callPatterns": [
        "removeMarkLabels({ target })",
        "removeMarkLabels({ source })"
      ],
      "snippet": "program.removeMarkLabels({ source: \"bars\" })",
      "errors": [],
      "route": "/reference/actions/marks/#removemarklabels"
    },
    {
      "schemaVersion": 3,
      "name": "createAnnotation",
      "layer": "user-facing",
      "domain": "marks",
      "summary": "Create constant text through one explicit anchor branch.",
      "signature": "createAnnotation(options: CreateAnnotationOptions): ChartProgram;",
      "intents": [
        "create annotation",
        "create",
        "add",
        "graphical mark",
        "mark appearance",
        "annotation",
        "anchored note"
      ],
      "lifecycle": "Aggregate create-only",
      "resources": {
        "prerequisites": [
          "dataset and coordinate context"
        ],
        "owns": [
          "annotation"
        ],
        "idOptions": [
          "id",
          "source",
          "data",
          "coordinate"
        ]
      },
      "authoringRoles": [
        "H1",
        "H2"
      ],
      "wraps": [
        "createScale",
        "createTextMark",
        "encodeText",
        "encodeX",
        "encodeY"
      ],
      "editableVia": [
        "encodeText",
        "editTextMark",
        "layoutLabels",
        "removeLabelLayout",
        "editScale",
        "removeMark"
      ],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [
        {
          "path": "opacity",
          "unit": "probability"
        },
        {
          "path": "fontSize",
          "unit": "logical-pixel"
        },
        {
          "path": "rotation",
          "unit": "angle"
        }
      ],
      "inference": [
        {
          "input": "source",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "data",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "coordinate",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "omitted optional options",
          "strategy": "documented-default"
        }
      ],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "dataset and coordinate context"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "missing",
          "required": false,
          "type": "\"error\" | \"skip\" | undefined"
        },
        {
          "name": "fill",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "opacity",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "fontSize",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "fontFamily",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "fontWeight",
          "required": false,
          "type": "string | number | undefined"
        },
        {
          "name": "align",
          "required": false,
          "type": "\"center\" | \"end\" | \"left\" | \"right\" | \"start\" | undefined"
        },
        {
          "name": "baseline",
          "required": false,
          "type": "\"alphabetic\" | \"bottom\" | \"hanging\" | \"ideographic\" | \"middle\" | \"top\" | undefined"
        },
        {
          "name": "rotation",
          "required": false,
          "type": "RotationInput | undefined"
        },
        {
          "name": "dx",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "dy",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "id",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "text",
          "required": true,
          "type": "unknown"
        },
        {
          "name": "format",
          "required": false,
          "type": "ValueFormat | undefined"
        },
        {
          "name": "layout",
          "required": false,
          "type": "false | Omit<LabelLayoutOptions, \"target\"> | undefined"
        },
        {
          "name": "x",
          "required": false,
          "type": "unknown"
        },
        {
          "name": "y",
          "required": false,
          "type": "unknown"
        },
        {
          "name": "space",
          "required": false,
          "type": "\"data\" | \"plot\" | undefined"
        },
        {
          "name": "source",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "data",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "coordinate",
          "required": false,
          "type": "string | undefined"
        }
      ],
      "callPatterns": [
        "createAnnotation({ text, source? })",
        "createAnnotation({ text, x, y, space?: \"data\" | \"plot\" })"
      ],
      "snippet": "program.createAnnotation({ text: \"Peak\", x: 8, y: 9 })",
      "errors": [],
      "route": "/reference/actions/marks/#createannotation"
    },
    {
      "schemaVersion": 3,
      "name": "createTextMark",
      "layer": "user-facing",
      "domain": "marks",
      "summary": "Create a semantic text layer.",
      "signature": "createTextMark(options?: TextMarkOptions): ChartProgram;",
      "intents": [
        "create text mark",
        "create",
        "add",
        "graphical mark",
        "mark appearance",
        "text label",
        "annotation mark"
      ],
      "lifecycle": "Mutable resource",
      "resources": {
        "prerequisites": [
          "dataset and coordinate context"
        ],
        "owns": [
          "text label"
        ],
        "idOptions": [
          "id",
          "data",
          "source"
        ]
      },
      "authoringRoles": [
        "H2"
      ],
      "wraps": [
        "editSemantic",
        "createGraphics",
        "editTextMark"
      ],
      "editableVia": [
        "editTextMark",
        "encodeText"
      ],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [
        {
          "path": "opacity",
          "unit": "probability"
        },
        {
          "path": "fontSize",
          "unit": "logical-pixel"
        },
        {
          "path": "rotation",
          "unit": "angle"
        }
      ],
      "inference": [
        {
          "input": "data",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "source",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "omitted optional options",
          "strategy": "documented-default"
        }
      ],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "dataset and coordinate context"
        ],
        "allowsEmpty": true
      },
      "options": [
        {
          "name": "id",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "data",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "source",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "text",
          "required": false,
          "type": "unknown"
        },
        {
          "name": "missing",
          "required": false,
          "type": "\"error\" | \"skip\" | undefined"
        },
        {
          "name": "fill",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "opacity",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "fontSize",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "fontFamily",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "fontWeight",
          "required": false,
          "type": "string | number | undefined"
        },
        {
          "name": "align",
          "required": false,
          "type": "\"center\" | \"end\" | \"left\" | \"right\" | \"start\" | undefined"
        },
        {
          "name": "baseline",
          "required": false,
          "type": "\"alphabetic\" | \"bottom\" | \"hanging\" | \"ideographic\" | \"middle\" | \"top\" | undefined"
        },
        {
          "name": "rotation",
          "required": false,
          "type": "RotationInput | undefined"
        },
        {
          "name": "dx",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "dy",
          "required": false,
          "type": "number | undefined"
        }
      ],
      "callPatterns": [
        "createTextMark({ id?, data?, source?, text?, missing?, fill?, opacity?, fontSize? })"
      ],
      "snippet": "program.createTextMark({})",
      "errors": [],
      "route": "/reference/actions/marks/#createtextmark"
    },
    {
      "schemaVersion": 3,
      "name": "editTextMark",
      "layer": "user-facing",
      "domain": "marks",
      "summary": "Edit text typography and graphical offsets without changing its semantic source or position.",
      "signature": "editTextMark(options: EditTextMarkOptions): ChartProgram;",
      "intents": [
        "edit text mark",
        "edit",
        "change",
        "graphical mark",
        "mark appearance",
        "text label",
        "annotation mark"
      ],
      "lifecycle": "Mutable resource",
      "resources": {
        "prerequisites": [
          "existing text label"
        ],
        "owns": [],
        "idOptions": [
          "target"
        ]
      },
      "authoringRoles": [
        "H3"
      ],
      "wraps": [],
      "editableVia": [
        "editTextMark"
      ],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [
        {
          "path": "opacity",
          "unit": "probability"
        },
        {
          "path": "fontSize",
          "unit": "logical-pixel"
        },
        {
          "path": "rotation",
          "unit": "angle"
        }
      ],
      "inference": [
        {
          "input": "target",
          "strategy": "explicit-current-unique-or-error"
        }
      ],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "existing text label"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "target",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "missing",
          "required": false,
          "type": "\"error\" | \"skip\" | undefined"
        },
        {
          "name": "fill",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "opacity",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "fontSize",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "fontFamily",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "fontWeight",
          "required": false,
          "type": "string | number | undefined"
        },
        {
          "name": "align",
          "required": false,
          "type": "\"center\" | \"end\" | \"left\" | \"right\" | \"start\" | undefined"
        },
        {
          "name": "baseline",
          "required": false,
          "type": "\"alphabetic\" | \"bottom\" | \"hanging\" | \"ideographic\" | \"middle\" | \"top\" | undefined"
        },
        {
          "name": "rotation",
          "required": false,
          "type": "RotationInput | undefined"
        },
        {
          "name": "dx",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "dy",
          "required": false,
          "type": "number | undefined"
        }
      ],
      "callPatterns": [
        "editTextMark({ target?, missing?, fill?, opacity?, fontSize?, fontFamily?, fontWeight?, align? })"
      ],
      "snippet": "program.editTextMark({ missing: \"error\" })",
      "errors": [],
      "route": "/reference/actions/marks/#edittextmark"
    },
    {
      "schemaVersion": 3,
      "name": "layoutLabels",
      "layer": "user-facing",
      "domain": "marks",
      "summary": "Assign deterministic collision-aware placement to one complete text mark.",
      "signature": "layoutLabels(options?: LabelLayoutOptions): ChartProgram;",
      "intents": [
        "layout labels",
        "layout",
        "avoid overlap",
        "graphical mark",
        "mark appearance",
        "label layout",
        "collision avoidance"
      ],
      "lifecycle": "Mutable resource",
      "resources": {
        "prerequisites": [
          "existing label layout"
        ],
        "owns": [
          "label layout"
        ],
        "idOptions": [
          "target"
        ]
      },
      "authoringRoles": [
        "H3"
      ],
      "wraps": [],
      "editableVia": [
        "layoutLabels",
        "removeLabelLayout"
      ],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [
        {
          "path": "padding",
          "unit": "logical-pixel"
        }
      ],
      "inference": [
        {
          "input": "target",
          "strategy": "explicit-current-unique-or-error"
        }
      ],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "existing label layout"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "target",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "axis",
          "required": false,
          "type": "LabelLayoutAxis | undefined"
        },
        {
          "name": "padding",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "maxDisplacement",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "bounds",
          "required": false,
          "type": "LabelLayoutBounds | undefined"
        },
        {
          "name": "leader",
          "required": false,
          "type": "false | LabelLeaderOptions | undefined"
        }
      ],
      "callPatterns": [
        "layoutLabels({ target?, axis?, padding?, maxDisplacement?, bounds?, leader? })"
      ],
      "snippet": "program.layoutLabels({ axis: \"y\" })",
      "errors": [],
      "route": "/reference/actions/marks/#layoutlabels"
    },
    {
      "schemaVersion": 3,
      "name": "removeLabelLayout",
      "layer": "user-facing",
      "domain": "marks",
      "summary": "Remove one text mark's layout policy and leader collection, then restore its semantic base positions.",
      "signature": "removeLabelLayout(options?: RemoveLabelLayoutOptions): ChartProgram;",
      "intents": [
        "remove label layout",
        "remove",
        "delete",
        "graphical mark",
        "mark appearance",
        "label layout",
        "collision avoidance and leader lines"
      ],
      "lifecycle": "Assignment",
      "resources": {
        "prerequisites": [
          "existing label layout"
        ],
        "owns": [],
        "idOptions": [
          "target"
        ]
      },
      "authoringRoles": [
        "H3"
      ],
      "wraps": [
        "editGraphics"
      ],
      "editableVia": [],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [],
      "inference": [
        {
          "input": "target",
          "strategy": "explicit-current-unique-or-error"
        }
      ],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "existing label layout"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "target",
          "required": false,
          "type": "string | undefined"
        }
      ],
      "callPatterns": [
        "removeLabelLayout({ target? })"
      ],
      "snippet": "program.removeLabelLayout({})",
      "errors": [],
      "route": "/reference/actions/marks/#removelabellayout"
    },
    {
      "schemaVersion": 3,
      "name": "editPointMark",
      "layer": "user-facing",
      "domain": "marks",
      "summary": "Change constant point shape, fill, opacity, or outline appearance and rematerialize its concrete items.",
      "signature": "editPointMark(options: StrokeStyleDetails & { target?: string; missing?: \"error\" | \"skip\"; shape?: PointShape; fill?: string; opacity?: number; stroke?: FilledMarkStroke; strokeWidth?: number; }): ChartProgram;",
      "intents": [
        "edit point mark",
        "edit",
        "change",
        "graphical mark",
        "mark appearance",
        "point mark",
        "scatter point"
      ],
      "lifecycle": "Mutable resource",
      "resources": {
        "prerequisites": [
          "existing point mark"
        ],
        "owns": [],
        "idOptions": [
          "target"
        ]
      },
      "authoringRoles": [
        "H3"
      ],
      "wraps": [],
      "editableVia": [
        "editPointMark"
      ],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [
        {
          "path": "opacity",
          "unit": "probability"
        },
        {
          "path": "strokeWidth",
          "unit": "logical-pixel"
        }
      ],
      "inference": [
        {
          "input": "target",
          "strategy": "explicit-current-unique-or-error"
        }
      ],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "existing point mark"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "lineCap",
          "required": false,
          "type": "\"butt\" | \"round\" | \"square\" | undefined"
        },
        {
          "name": "lineJoin",
          "required": false,
          "type": "\"bevel\" | \"miter\" | \"round\" | undefined"
        },
        {
          "name": "miterLimit",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "target",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "missing",
          "required": false,
          "type": "\"error\" | \"skip\" | undefined"
        },
        {
          "name": "shape",
          "required": false,
          "type": "PointShape | undefined"
        },
        {
          "name": "fill",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "opacity",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "stroke",
          "required": false,
          "type": "FilledMarkStroke | undefined"
        },
        {
          "name": "strokeWidth",
          "required": false,
          "type": "number | undefined"
        }
      ],
      "callPatterns": [
        "editPointMark({ target?, lineCap?, lineJoin?, miterLimit?, missing?, shape?, fill?, opacity? })"
      ],
      "snippet": "program.editPointMark({ fill: \"#f28e2b\" })",
      "errors": [],
      "route": "/reference/actions/marks/#editpointmark"
    },
    {
      "schemaVersion": 3,
      "name": "editTickMark",
      "layer": "user-facing",
      "domain": "marks",
      "summary": "Partially edit Tick length or constant line appearance while preserving data, position, and other assignments.",
      "signature": "editTickMark(options: StrokeStyleDetails & { target?: string; missing?: \"error\" | \"skip\"; length?: number; stroke?: string; strokeWidth?: number; opacity?: number; }): ChartProgram;",
      "intents": [
        "edit tick mark",
        "edit",
        "change",
        "graphical mark",
        "mark appearance",
        "tick mark",
        "one-dimensional distribution"
      ],
      "lifecycle": "Mutable resource",
      "resources": {
        "prerequisites": [
          "existing tick mark"
        ],
        "owns": [],
        "idOptions": [
          "target"
        ]
      },
      "authoringRoles": [
        "H3"
      ],
      "wraps": [],
      "editableVia": [
        "editTickMark"
      ],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [
        {
          "path": "length",
          "unit": "logical-pixel"
        },
        {
          "path": "strokeWidth",
          "unit": "logical-pixel"
        },
        {
          "path": "opacity",
          "unit": "probability"
        }
      ],
      "inference": [
        {
          "input": "target",
          "strategy": "explicit-current-unique-or-error"
        }
      ],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "existing tick mark"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "lineCap",
          "required": false,
          "type": "\"butt\" | \"round\" | \"square\" | undefined"
        },
        {
          "name": "lineJoin",
          "required": false,
          "type": "\"bevel\" | \"miter\" | \"round\" | undefined"
        },
        {
          "name": "miterLimit",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "target",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "missing",
          "required": false,
          "type": "\"error\" | \"skip\" | undefined"
        },
        {
          "name": "length",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "stroke",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "strokeWidth",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "opacity",
          "required": false,
          "type": "number | undefined"
        }
      ],
      "callPatterns": [
        "editTickMark({ target?, lineCap?, lineJoin?, miterLimit?, missing?, length?, stroke?, strokeWidth? })"
      ],
      "snippet": "program.editTickMark({ lineCap: \"butt\" })",
      "errors": [],
      "route": "/reference/actions/marks/#edittickmark"
    },
    {
      "schemaVersion": 3,
      "name": "jitterPoints",
      "layer": "user-facing",
      "domain": "marks",
      "summary": "Assign deterministic bounded graphical jitter to one Cartesian point mark.",
      "signature": "jitterPoints(options: JitterPointsOptions): ChartProgram;",
      "intents": [
        "jitter points",
        "jitter",
        "separate overlapping points",
        "graphical mark",
        "mark appearance",
        "point positions",
        "overlapping observations"
      ],
      "lifecycle": "Assignment",
      "resources": {
        "prerequisites": [
          "existing point positions"
        ],
        "owns": [
          "point positions"
        ],
        "idOptions": [
          "target"
        ]
      },
      "authoringRoles": [
        "H3"
      ],
      "wraps": [],
      "editableVia": [
        "jitterPoints",
        "removeJitter"
      ],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [],
      "inference": [
        {
          "input": "target",
          "strategy": "explicit-current-unique-or-error"
        }
      ],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "existing point positions"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "target",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "channel",
          "required": true,
          "type": "\"x\" | \"y\""
        },
        {
          "name": "maxOffset",
          "required": true,
          "type": "JitterMaxOffset"
        },
        {
          "name": "seed",
          "required": false,
          "type": "string | number | undefined"
        },
        {
          "name": "key",
          "required": false,
          "type": "string | undefined"
        }
      ],
      "callPatterns": [
        "jitterPoints({ channel, maxOffset, target?, seed?, key? })"
      ],
      "snippet": "program.jitterPoints({ channel: \"x\", maxOffset: { pixels: 4 } })",
      "errors": [],
      "route": "/reference/actions/marks/#jitterpoints"
    },
    {
      "schemaVersion": 3,
      "name": "removeJitter",
      "layer": "user-facing",
      "domain": "marks",
      "summary": "Remove the target point mark's jitter assignment and restore positions derived directly from its semantic encodings.",
      "signature": "removeJitter(options?: RemoveJitterOptions): ChartProgram;",
      "intents": [
        "remove jitter",
        "remove",
        "delete",
        "graphical mark",
        "mark appearance",
        "point jitter",
        "overplotting"
      ],
      "lifecycle": "Assignment",
      "resources": {
        "prerequisites": [
          "existing point jitter"
        ],
        "owns": [],
        "idOptions": [
          "target"
        ]
      },
      "authoringRoles": [
        "H3"
      ],
      "wraps": [],
      "editableVia": [],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [],
      "inference": [
        {
          "input": "target",
          "strategy": "explicit-current-unique-or-error"
        }
      ],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "existing point jitter"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "target",
          "required": false,
          "type": "string | undefined"
        }
      ],
      "callPatterns": [
        "removeJitter({ target? })"
      ],
      "snippet": "program.removeJitter({})",
      "errors": [],
      "route": "/reference/actions/marks/#removejitter"
    },
    {
      "schemaVersion": 3,
      "name": "packPoints",
      "layer": "user-facing",
      "domain": "marks",
      "summary": "Deterministically displace Point glyphs only on a categorical x or y axis to avoid overlap while preserving measure coordinates.",
      "signature": "packPoints(options: PackPointsOptions): ChartProgram;",
      "intents": [
        "pack points",
        "pack",
        "avoid point overlap",
        "graphical mark",
        "mark appearance",
        "point positions",
        "overlapping observations"
      ],
      "lifecycle": "Assignment",
      "resources": {
        "prerequisites": [
          "existing point positions"
        ],
        "owns": [
          "point positions"
        ],
        "idOptions": [
          "target"
        ]
      },
      "authoringRoles": [
        "H3"
      ],
      "wraps": [],
      "editableVia": [
        "packPoints",
        "removePointPacking"
      ],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [
        {
          "path": "padding",
          "unit": "logical-pixel"
        }
      ],
      "inference": [
        {
          "input": "target",
          "strategy": "explicit-current-unique-or-error"
        }
      ],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "existing point positions"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "target",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "channel",
          "required": true,
          "type": "\"x\" | \"y\""
        },
        {
          "name": "maxOffset",
          "required": false,
          "type": "PointPackingMaxOffset | undefined"
        },
        {
          "name": "padding",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "key",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "overflow",
          "required": false,
          "type": "\"error\" | \"overlap\" | undefined"
        }
      ],
      "callPatterns": [
        "packPoints({ channel, maxOffset?, padding?, key?, overflow? })"
      ],
      "snippet": "program.packPoints({ channel: \"x\" })",
      "errors": [],
      "route": "/reference/actions/marks/#packpoints"
    },
    {
      "schemaVersion": 3,
      "name": "removePointPacking",
      "layer": "user-facing",
      "domain": "marks",
      "summary": "Remove stored point packing and rematerialize the current semantic scale positions.",
      "signature": "removePointPacking(options?: RemovePointPackingOptions): ChartProgram;",
      "intents": [
        "remove point packing",
        "remove",
        "delete",
        "graphical mark",
        "mark appearance",
        "point packing",
        "deterministic collision avoidance"
      ],
      "lifecycle": "Assignment",
      "resources": {
        "prerequisites": [
          "existing point packing"
        ],
        "owns": [],
        "idOptions": [
          "target"
        ]
      },
      "authoringRoles": [
        "H3"
      ],
      "wraps": [],
      "editableVia": [],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [],
      "inference": [
        {
          "input": "target",
          "strategy": "explicit-current-unique-or-error"
        }
      ],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "existing point packing"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "target",
          "required": false,
          "type": "string | undefined"
        }
      ],
      "callPatterns": [
        "removePointPacking({ target? })"
      ],
      "snippet": "program.removePointPacking({})",
      "errors": [],
      "route": "/reference/actions/marks/#removepointpacking"
    },
    {
      "schemaVersion": 3,
      "name": "removeMark",
      "layer": "user-facing",
      "domain": "marks",
      "summary": "Remove one stable mark owner and its owned state while preserving source data and independently shared resources.",
      "signature": "removeMark(options?: RemoveMarkOptions): ChartProgram;",
      "intents": [
        "remove mark",
        "remove",
        "delete",
        "graphical mark",
        "mark appearance",
        "mark resource",
        "semantic and graphical mark state"
      ],
      "lifecycle": "Mutable resource",
      "resources": {
        "prerequisites": [
          "existing mark resource"
        ],
        "owns": [],
        "idOptions": [
          "target"
        ]
      },
      "authoringRoles": [
        "H3"
      ],
      "wraps": [
        "editSemantic",
        "editGraphics"
      ],
      "editableVia": [],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [],
      "inference": [
        {
          "input": "target",
          "strategy": "explicit-current-unique-or-error"
        }
      ],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "existing mark resource"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "target",
          "required": false,
          "type": "string | undefined"
        }
      ],
      "callPatterns": [
        "removeMark({ target? })"
      ],
      "snippet": "program.removeMark({})",
      "errors": [],
      "route": "/reference/actions/marks/#removemark"
    },
    {
      "schemaVersion": 3,
      "name": "createLineMark",
      "layer": "user-facing",
      "domain": "marks",
      "summary": "Create a semantic line mark and empty path collection.",
      "signature": "createLineMark(options?: StrokeStyleDetails & { id?: string; data?: string; strokeWidth?: number; curve?: CurveInterpolation; stroke?: string; opacity?: number; closed?: boolean; }): ChartProgram;",
      "intents": [
        "create line mark",
        "create",
        "add",
        "graphical mark",
        "mark appearance",
        "line mark",
        "path"
      ],
      "lifecycle": "Mutable resource",
      "resources": {
        "prerequisites": [
          "dataset and coordinate context"
        ],
        "owns": [
          "line mark"
        ],
        "idOptions": [
          "id",
          "data"
        ]
      },
      "authoringRoles": [
        "H2"
      ],
      "wraps": [
        "editSemantic",
        "createGraphics",
        "editLineMark"
      ],
      "editableVia": [
        "editLineMark"
      ],
      "supports": {
        "entryPoints": [
          "default",
          "basic"
        ]
      },
      "units": [
        {
          "path": "strokeWidth",
          "unit": "logical-pixel"
        },
        {
          "path": "opacity",
          "unit": "probability"
        }
      ],
      "inference": [
        {
          "input": "data",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "omitted optional options",
          "strategy": "documented-default"
        }
      ],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "dataset and coordinate context"
        ],
        "allowsEmpty": true
      },
      "options": [
        {
          "name": "lineCap",
          "required": false,
          "type": "\"butt\" | \"round\" | \"square\" | undefined"
        },
        {
          "name": "lineJoin",
          "required": false,
          "type": "\"bevel\" | \"miter\" | \"round\" | undefined"
        },
        {
          "name": "miterLimit",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "id",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "data",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "strokeWidth",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "curve",
          "required": false,
          "type": "CurveInterpolation | undefined"
        },
        {
          "name": "stroke",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "opacity",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "closed",
          "required": false,
          "type": "boolean | undefined"
        }
      ],
      "callPatterns": [
        "createLineMark({ id?, data?, lineCap?, lineJoin?, miterLimit?, strokeWidth?, curve?, stroke? })"
      ],
      "snippet": "program.createLineMark({})",
      "errors": [],
      "route": "/reference/actions/marks/#createlinemark"
    },
    {
      "schemaVersion": 3,
      "name": "editLineMark",
      "layer": "user-facing",
      "domain": "marks",
      "summary": "Edit line appearance and rematerialize concrete path commands without changing semantic encodings.",
      "signature": "editLineMark(options: StrokeStyleDetails & { target?: string; strokeWidth?: number; curve?: CurveInterpolation; stroke?: string; opacity?: number; closed?: boolean; }): ChartProgram;",
      "intents": [
        "edit line mark",
        "edit",
        "change",
        "graphical mark",
        "mark appearance",
        "line mark",
        "path"
      ],
      "lifecycle": "Mutable resource",
      "resources": {
        "prerequisites": [
          "existing line mark"
        ],
        "owns": [],
        "idOptions": [
          "target"
        ]
      },
      "authoringRoles": [
        "H3"
      ],
      "wraps": [],
      "editableVia": [
        "editLineMark"
      ],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [
        {
          "path": "strokeWidth",
          "unit": "logical-pixel"
        },
        {
          "path": "opacity",
          "unit": "probability"
        }
      ],
      "inference": [
        {
          "input": "target",
          "strategy": "explicit-current-unique-or-error"
        }
      ],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "existing line mark"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "lineCap",
          "required": false,
          "type": "\"butt\" | \"round\" | \"square\" | undefined"
        },
        {
          "name": "lineJoin",
          "required": false,
          "type": "\"bevel\" | \"miter\" | \"round\" | undefined"
        },
        {
          "name": "miterLimit",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "target",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "strokeWidth",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "curve",
          "required": false,
          "type": "CurveInterpolation | undefined"
        },
        {
          "name": "stroke",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "opacity",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "closed",
          "required": false,
          "type": "boolean | undefined"
        }
      ],
      "callPatterns": [
        "editLineMark({ target?, lineCap?, lineJoin?, miterLimit?, strokeWidth?, curve?, stroke?, opacity? })"
      ],
      "snippet": "program.editLineMark({ lineCap: \"butt\" })",
      "errors": [],
      "route": "/reference/actions/marks/#editlinemark"
    },
    {
      "schemaVersion": 3,
      "name": "createBarMark",
      "layer": "user-facing",
      "domain": "marks",
      "summary": "Create a semantic bar mark and empty rect collection.",
      "signature": "createBarMark(options?: RectStyleDetails & { id?: string; data?: string; missing?: \"error\" | \"skip\"; fill?: string; opacity?: number; stroke?: FilledMarkStroke; strokeWidth?: number; }): ChartProgram;",
      "intents": [
        "create bar mark",
        "create",
        "add",
        "graphical mark",
        "mark appearance",
        "bar mark",
        "rectangle bar"
      ],
      "lifecycle": "Mutable resource",
      "resources": {
        "prerequisites": [
          "dataset and coordinate context"
        ],
        "owns": [
          "bar mark"
        ],
        "idOptions": [
          "id",
          "data"
        ]
      },
      "authoringRoles": [
        "H2"
      ],
      "wraps": [
        "editSemantic",
        "createGraphics",
        "editBarMark"
      ],
      "editableVia": [
        "editBarMark"
      ],
      "supports": {
        "entryPoints": [
          "default",
          "basic"
        ]
      },
      "units": [
        {
          "path": "opacity",
          "unit": "probability"
        },
        {
          "path": "strokeWidth",
          "unit": "logical-pixel"
        }
      ],
      "inference": [
        {
          "input": "data",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "omitted optional options",
          "strategy": "documented-default"
        }
      ],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "dataset and coordinate context"
        ],
        "allowsEmpty": true
      },
      "options": [
        {
          "name": "lineCap",
          "required": false,
          "type": "\"butt\" | \"round\" | \"square\" | undefined"
        },
        {
          "name": "lineJoin",
          "required": false,
          "type": "\"bevel\" | \"miter\" | \"round\" | undefined"
        },
        {
          "name": "miterLimit",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "cornerRadius",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "id",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "data",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "missing",
          "required": false,
          "type": "\"error\" | \"skip\" | undefined"
        },
        {
          "name": "fill",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "opacity",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "stroke",
          "required": false,
          "type": "FilledMarkStroke | undefined"
        },
        {
          "name": "strokeWidth",
          "required": false,
          "type": "number | undefined"
        }
      ],
      "callPatterns": [
        "createBarMark({ id?, data?, lineCap?, lineJoin?, miterLimit?, cornerRadius?, missing?, fill? })"
      ],
      "snippet": "program.createBarMark({})",
      "errors": [],
      "route": "/reference/actions/marks/#createbarmark"
    },
    {
      "schemaVersion": 3,
      "name": "editBarMark",
      "layer": "user-facing",
      "domain": "marks",
      "summary": "Edit whole-bar appearance and rematerialize every concrete rectangle.",
      "signature": "editBarMark(options: RectStyleDetails & { target?: string; missing?: \"error\" | \"skip\"; fill?: string; opacity?: number; stroke?: FilledMarkStroke; strokeWidth?: number; }): ChartProgram;",
      "intents": [
        "edit bar mark",
        "edit",
        "change",
        "graphical mark",
        "mark appearance",
        "bar mark",
        "rectangle bar"
      ],
      "lifecycle": "Mutable resource",
      "resources": {
        "prerequisites": [
          "existing bar mark"
        ],
        "owns": [],
        "idOptions": [
          "target"
        ]
      },
      "authoringRoles": [
        "H3"
      ],
      "wraps": [],
      "editableVia": [
        "editBarMark"
      ],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [
        {
          "path": "opacity",
          "unit": "probability"
        },
        {
          "path": "strokeWidth",
          "unit": "logical-pixel"
        }
      ],
      "inference": [
        {
          "input": "target",
          "strategy": "explicit-current-unique-or-error"
        }
      ],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "existing bar mark"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "lineCap",
          "required": false,
          "type": "\"butt\" | \"round\" | \"square\" | undefined"
        },
        {
          "name": "lineJoin",
          "required": false,
          "type": "\"bevel\" | \"miter\" | \"round\" | undefined"
        },
        {
          "name": "miterLimit",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "cornerRadius",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "target",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "missing",
          "required": false,
          "type": "\"error\" | \"skip\" | undefined"
        },
        {
          "name": "fill",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "opacity",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "stroke",
          "required": false,
          "type": "FilledMarkStroke | undefined"
        },
        {
          "name": "strokeWidth",
          "required": false,
          "type": "number | undefined"
        }
      ],
      "callPatterns": [
        "editBarMark({ target?, lineCap?, lineJoin?, miterLimit?, cornerRadius?, missing?, fill?, opacity? })"
      ],
      "snippet": "program.editBarMark({ lineCap: \"butt\" })",
      "errors": [],
      "route": "/reference/actions/marks/#editbarmark"
    },
    {
      "schemaVersion": 3,
      "name": "createAreaMark",
      "layer": "user-facing",
      "domain": "marks",
      "summary": "Create a semantic area mark and empty path collection.",
      "signature": "createAreaMark(options?: StrokeStyleDetails & { id?: string; data?: string; fill?: string; opacity?: number; stroke?: string; strokeWidth?: number; curve?: CurveInterpolation; missing?: \"error\" | \"break\"; }): ChartProgram;",
      "intents": [
        "create area mark",
        "create",
        "add",
        "graphical mark",
        "mark appearance",
        "area mark",
        "filled band"
      ],
      "lifecycle": "Mutable resource",
      "resources": {
        "prerequisites": [
          "dataset and coordinate context"
        ],
        "owns": [
          "area mark"
        ],
        "idOptions": [
          "id",
          "data"
        ]
      },
      "authoringRoles": [
        "H2"
      ],
      "wraps": [
        "editSemantic",
        "createGraphics"
      ],
      "editableVia": [
        "editAreaMark"
      ],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [
        {
          "path": "opacity",
          "unit": "probability"
        },
        {
          "path": "strokeWidth",
          "unit": "logical-pixel"
        }
      ],
      "inference": [
        {
          "input": "data",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "omitted optional options",
          "strategy": "documented-default"
        }
      ],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "dataset and coordinate context"
        ],
        "allowsEmpty": true
      },
      "options": [
        {
          "name": "lineCap",
          "required": false,
          "type": "\"butt\" | \"round\" | \"square\" | undefined"
        },
        {
          "name": "lineJoin",
          "required": false,
          "type": "\"bevel\" | \"miter\" | \"round\" | undefined"
        },
        {
          "name": "miterLimit",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "id",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "data",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "fill",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "opacity",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "stroke",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "strokeWidth",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "curve",
          "required": false,
          "type": "CurveInterpolation | undefined"
        },
        {
          "name": "missing",
          "required": false,
          "type": "\"break\" | \"error\" | undefined"
        }
      ],
      "callPatterns": [
        "createAreaMark({ id?, data?, lineCap?, lineJoin?, miterLimit?, fill?, opacity?, stroke? })"
      ],
      "snippet": "program.createAreaMark({})",
      "errors": [],
      "route": "/reference/actions/marks/#createareamark"
    },
    {
      "schemaVersion": 3,
      "name": "createRuleMark",
      "layer": "user-facing",
      "domain": "marks",
      "summary": "Create a semantic rule mark and empty line collection.",
      "signature": "createRuleMark(options?: { id?: string; data?: string; missing?: \"error\" | \"skip\" } & RuleStyleOptions): ChartProgram;",
      "intents": [
        "create rule mark",
        "create",
        "add",
        "graphical mark",
        "mark appearance",
        "rule mark",
        "reference line"
      ],
      "lifecycle": "Mutable resource",
      "resources": {
        "prerequisites": [
          "dataset and coordinate context"
        ],
        "owns": [
          "rule mark"
        ],
        "idOptions": [
          "id",
          "data"
        ]
      },
      "authoringRoles": [
        "H2"
      ],
      "wraps": [
        "editSemantic",
        "createGraphics",
        "encodeStroke",
        "encodeStrokeWidth",
        "encodeStrokeDash"
      ],
      "editableVia": [
        "editRuleMark"
      ],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [
        {
          "path": "strokeWidth",
          "unit": "logical-pixel"
        },
        {
          "path": "opacity",
          "unit": "probability"
        }
      ],
      "inference": [
        {
          "input": "data",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "omitted optional options",
          "strategy": "documented-default"
        }
      ],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "dataset and coordinate context"
        ],
        "allowsEmpty": true
      },
      "options": [
        {
          "name": "id",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "data",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "missing",
          "required": false,
          "type": "\"error\" | \"skip\" | undefined"
        },
        {
          "name": "stroke",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "strokeWidth",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "strokeDash",
          "required": false,
          "type": "DashPattern | DashStyle | undefined"
        },
        {
          "name": "opacity",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "lineCap",
          "required": false,
          "type": "\"butt\" | \"round\" | \"square\" | undefined"
        },
        {
          "name": "lineJoin",
          "required": false,
          "type": "\"bevel\" | \"miter\" | \"round\" | undefined"
        },
        {
          "name": "miterLimit",
          "required": false,
          "type": "number | undefined"
        }
      ],
      "callPatterns": [
        "createRuleMark({ id?, data?, missing?, stroke?, strokeWidth?, strokeDash?, opacity?, lineCap? })"
      ],
      "snippet": "program.createRuleMark({})",
      "errors": [],
      "route": "/reference/actions/marks/#createrulemark"
    },
    {
      "schemaVersion": 3,
      "name": "editRuleMark",
      "layer": "user-facing",
      "domain": "marks",
      "summary": "Edit constant Rule appearance through the four existing encoding owners.",
      "signature": "editRuleMark(options: { target?: string; missing?: \"error\" | \"skip\" } & RuleStyleOptions): ChartProgram;",
      "intents": [
        "edit rule mark",
        "edit",
        "change",
        "graphical mark",
        "mark appearance",
        "rule mark",
        "reference line"
      ],
      "lifecycle": "Mutable resource",
      "resources": {
        "prerequisites": [
          "existing rule mark"
        ],
        "owns": [],
        "idOptions": [
          "target"
        ]
      },
      "authoringRoles": [
        "H3"
      ],
      "wraps": [
        "encodeStroke",
        "encodeOpacity"
      ],
      "editableVia": [
        "editRuleMark"
      ],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [
        {
          "path": "strokeWidth",
          "unit": "logical-pixel"
        },
        {
          "path": "opacity",
          "unit": "probability"
        }
      ],
      "inference": [
        {
          "input": "target",
          "strategy": "explicit-current-unique-or-error"
        }
      ],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "existing rule mark"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "target",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "missing",
          "required": false,
          "type": "\"error\" | \"skip\" | undefined"
        },
        {
          "name": "stroke",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "strokeWidth",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "strokeDash",
          "required": false,
          "type": "DashPattern | DashStyle | undefined"
        },
        {
          "name": "opacity",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "lineCap",
          "required": false,
          "type": "\"butt\" | \"round\" | \"square\" | undefined"
        },
        {
          "name": "lineJoin",
          "required": false,
          "type": "\"bevel\" | \"miter\" | \"round\" | undefined"
        },
        {
          "name": "miterLimit",
          "required": false,
          "type": "number | undefined"
        }
      ],
      "callPatterns": [
        "editRuleMark({ target?, missing?, stroke?, strokeWidth?, strokeDash?, opacity?, lineCap?, lineJoin? })"
      ],
      "snippet": "program.editRuleMark({ stroke: \"#334155\" })",
      "errors": [],
      "route": "/reference/actions/marks/#editrulemark"
    },
    {
      "schemaVersion": 3,
      "name": "editAreaMark",
      "layer": "user-facing",
      "domain": "marks",
      "summary": "Edit constant area appearance.",
      "signature": "editAreaMark(options: StrokeStyleDetails & { target?: string; fill?: string; opacity?: number; stroke?: string | false; strokeWidth?: number; curve?: CurveInterpolation; missing?: \"error\" | \"break\"; }): ChartProgram;",
      "intents": [
        "edit area mark",
        "edit",
        "change",
        "graphical mark",
        "mark appearance",
        "area mark",
        "filled band"
      ],
      "lifecycle": "Mutable resource",
      "resources": {
        "prerequisites": [
          "existing area mark"
        ],
        "owns": [],
        "idOptions": [
          "target"
        ]
      },
      "authoringRoles": [
        "H3"
      ],
      "wraps": [],
      "editableVia": [
        "editAreaMark"
      ],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [
        {
          "path": "opacity",
          "unit": "probability"
        },
        {
          "path": "strokeWidth",
          "unit": "logical-pixel"
        }
      ],
      "inference": [
        {
          "input": "target",
          "strategy": "explicit-current-unique-or-error"
        }
      ],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "existing area mark"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "lineCap",
          "required": false,
          "type": "\"butt\" | \"round\" | \"square\" | undefined"
        },
        {
          "name": "lineJoin",
          "required": false,
          "type": "\"bevel\" | \"miter\" | \"round\" | undefined"
        },
        {
          "name": "miterLimit",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "target",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "fill",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "opacity",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "stroke",
          "required": false,
          "type": "string | false | undefined"
        },
        {
          "name": "strokeWidth",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "curve",
          "required": false,
          "type": "CurveInterpolation | undefined"
        },
        {
          "name": "missing",
          "required": false,
          "type": "\"break\" | \"error\" | undefined"
        }
      ],
      "callPatterns": [
        "editAreaMark({ target?, lineCap?, lineJoin?, miterLimit?, fill?, opacity?, stroke?, strokeWidth? })"
      ],
      "snippet": "program.editAreaMark({ lineCap: \"butt\" })",
      "errors": [],
      "route": "/reference/actions/marks/#editareamark"
    },
    {
      "schemaVersion": 3,
      "name": "encodeX",
      "layer": "user-facing",
      "domain": "encodings",
      "summary": "Create or compatibly replace an x encoding for the supported mark/type pairs in the matrix above.",
      "signature": "encodeX(options: PositionEncodingOptions | DatumPositionEncodingOptions): ChartProgram;",
      "intents": [
        "encode x",
        "encode",
        "map field",
        "visual encoding",
        "field mapping",
        "x position",
        "horizontal position"
      ],
      "lifecycle": "Assignment",
      "resources": {
        "prerequisites": [
          "target mark",
          "field in the target dataset"
        ],
        "owns": [
          "x position assignment"
        ],
        "idOptions": [
          "target",
          "coordinate",
          "scale"
        ]
      },
      "authoringRoles": [
        "H2"
      ],
      "wraps": [
        "createCoordinate",
        "editSemantic",
        "createScale",
        "editScale"
      ],
      "editableVia": [
        "removeEncoding"
      ],
      "supports": {
        "entryPoints": [
          "default",
          "basic"
        ]
      },
      "units": [
        {
          "path": "temporalUnit",
          "unit": "temporal-input"
        }
      ],
      "inference": [
        {
          "input": "target",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "coordinate",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "scale",
          "strategy": "explicit-current-unique-or-error"
        }
      ],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "target mark",
          "field in the target dataset"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "field",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "target",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "coordinate",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "fieldType",
          "required": false,
          "type": "FieldType | undefined"
        },
        {
          "name": "scale",
          "required": false,
          "type": "CategoricalPositionScaleOptions | NonPointCategoricalPositionScaleOptions | NonPointQuantitativePositionScaleOptions | NonPointTemporalPositionScaleOptions | QuantitativePositionScaleOptions | TemporalPositionScaleOptions | undefined"
        },
        {
          "name": "datum",
          "required": false,
          "type": "unknown"
        },
        {
          "name": "bin",
          "required": false,
          "type": "{ maxBins?: number | undefined; step?: undefined; boundaries?: undefined; } | { maxBins?: undefined; step: number; boundaries?: undefined; } | { maxBins?: undefined; step?: undefined; boundaries: readonly [...]; } | undefined"
        },
        {
          "name": "stack",
          "required": false,
          "type": "StackMode | undefined"
        },
        {
          "name": "aggregate",
          "required": false,
          "type": "undefined"
        },
        {
          "name": "temporalUnit",
          "required": false,
          "type": "TemporalInputUnit | undefined"
        }
      ],
      "callPatterns": [
        "encodeX({ target?, coordinate?, scale?, field?, fieldType?, datum?, bin?, stack? })"
      ],
      "snippet": "program.encodeX({ field: \"x\" })",
      "errors": [],
      "route": "/reference/actions/encodings/#encodex"
    },
    {
      "schemaVersion": 3,
      "name": "encodeY",
      "layer": "user-facing",
      "domain": "encodings",
      "summary": "Create or compatibly replace a y encoding.",
      "signature": "encodeY(options: YPositionEncodingOptions | DatumPositionEncodingOptions): ChartProgram;",
      "intents": [
        "encode y",
        "encode",
        "map field",
        "visual encoding",
        "field mapping",
        "y position",
        "vertical position"
      ],
      "lifecycle": "Assignment",
      "resources": {
        "prerequisites": [
          "target mark",
          "field in the target dataset"
        ],
        "owns": [
          "y position assignment"
        ],
        "idOptions": [
          "target",
          "coordinate",
          "scale"
        ]
      },
      "authoringRoles": [
        "H2"
      ],
      "wraps": [
        "createCoordinate",
        "editSemantic",
        "createScale",
        "layoutSeries",
        "encodeX"
      ],
      "editableVia": [
        "removeEncoding"
      ],
      "supports": {
        "entryPoints": [
          "default",
          "basic"
        ]
      },
      "units": [
        {
          "path": "temporalUnit",
          "unit": "temporal-input"
        }
      ],
      "inference": [
        {
          "input": "target",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "coordinate",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "scale",
          "strategy": "explicit-current-unique-or-error"
        }
      ],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "target mark",
          "field in the target dataset"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "field",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "target",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "coordinate",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "fieldType",
          "required": false,
          "type": "FieldType | undefined"
        },
        {
          "name": "scale",
          "required": false,
          "type": "CategoricalPositionScaleOptions | NonPointCategoricalPositionScaleOptions | NonPointQuantitativePositionScaleOptions | NonPointTemporalPositionScaleOptions | QuantitativePositionScaleOptions | TemporalPositionScaleOptions | undefined"
        },
        {
          "name": "datum",
          "required": false,
          "type": "unknown"
        },
        {
          "name": "aggregate",
          "required": false,
          "type": "undefined"
        },
        {
          "name": "stack",
          "required": false,
          "type": "YStackMode | undefined"
        },
        {
          "name": "temporalUnit",
          "required": false,
          "type": "TemporalInputUnit | undefined"
        }
      ],
      "callPatterns": [
        "encodeY({ target?, coordinate?, scale?, field?, fieldType?, datum?, aggregate?, stack? })"
      ],
      "snippet": "program.encodeY({ field: \"y\" })",
      "errors": [],
      "route": "/reference/actions/encodings/#encodey"
    },
    {
      "schemaVersion": 3,
      "name": "encodeChannels",
      "layer": "advanced",
      "domain": "encodings",
      "summary": "Atomically replaces multiple compatible encoding channels on one explicit mark from one final state.",
      "signature": "encodeChannels(options: EncodeChannelsOptions): ChartProgram;",
      "intents": [
        "encode channels",
        "encode",
        "map field",
        "visual encoding",
        "field mapping",
        "multiple encodings on one mark",
        "atomic multi-channel mapping"
      ],
      "lifecycle": "Assignment",
      "resources": {
        "prerequisites": [
          "target mark"
        ],
        "owns": [
          "multiple encodings on one mark assignment"
        ],
        "idOptions": [
          "target"
        ]
      },
      "authoringRoles": [
        "H2"
      ],
      "wraps": [
        "createCoordinate",
        "editSemantic",
        "createScale"
      ],
      "editableVia": [
        "removeEncoding"
      ],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [],
      "inference": [
        {
          "input": "target",
          "strategy": "explicit"
        }
      ],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "target mark"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "target",
          "required": true,
          "type": "string"
        },
        {
          "name": "channels",
          "required": true,
          "type": "AtLeastOne<EncodingChannelAssignments>"
        }
      ],
      "callPatterns": [
        "encodeChannels({ target, channels: { x: { field }, y: { field } } })",
        "encodeChannels({ target, channels: { color: { field }, stroke: { field }, size: { field } } })"
      ],
      "snippet": "program.encodeChannels({ target: \"points\", channels: { x: { field: \"b\" }, y: { field: \"a\" } } })",
      "errors": [],
      "route": "/reference/actions/advanced/#encodechannels"
    },
    {
      "schemaVersion": 3,
      "name": "encodeX2",
      "layer": "user-facing",
      "domain": "encodings",
      "summary": "Assign an area, ranged-bar, or rect upper edge, or a rule secondary x endpoint.",
      "signature": "encodeX2(options: SecondaryPositionEncodingOptions): ChartProgram;",
      "intents": [
        "encode x2",
        "encode",
        "map field",
        "visual encoding",
        "field mapping",
        "secondary x position",
        "x endpoint"
      ],
      "lifecycle": "Assignment",
      "resources": {
        "prerequisites": [
          "target mark",
          "field in the target dataset"
        ],
        "owns": [
          "secondary x position assignment"
        ],
        "idOptions": [
          "target",
          "scale",
          "coordinate"
        ]
      },
      "authoringRoles": [
        "H2"
      ],
      "wraps": [
        "editSemantic"
      ],
      "editableVia": [
        "removeEncoding"
      ],
      "supports": {
        "entryPoints": [
          "default",
          "basic"
        ]
      },
      "units": [
        {
          "path": "temporalUnit",
          "unit": "temporal-input"
        }
      ],
      "inference": [
        {
          "input": "target",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "scale",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "coordinate",
          "strategy": "explicit-current-unique-or-error"
        }
      ],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "target mark",
          "field in the target dataset"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "datum",
          "required": false,
          "type": "unknown"
        },
        {
          "name": "field",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "fieldType",
          "required": false,
          "type": "\"nominal\" | \"ordinal\" | \"quantitative\" | \"temporal\" | undefined"
        },
        {
          "name": "target",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "scale",
          "required": false,
          "type": "{ id?: string | undefined; } | { id?: string | undefined; } | { id?: string | undefined; } | undefined"
        },
        {
          "name": "coordinate",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "temporalUnit",
          "required": false,
          "type": "undefined"
        }
      ],
      "callPatterns": [
        "encodeX2({ target?, scale?, coordinate?, datum?, field?, fieldType?, temporalUnit? })"
      ],
      "snippet": "program.encodeX2({ field: \"x2\" })",
      "errors": [],
      "route": "/reference/actions/encodings/#encodex2"
    },
    {
      "schemaVersion": 3,
      "name": "encodeColor",
      "layer": "user-facing",
      "domain": "encodings",
      "summary": "Create or compatibly replace point fill, line-series color, grouped area fill, bar color, rect fill, or arc-sector fill.",
      "signature": "encodeColor(options: ColorEncodingOptions): ChartProgram;",
      "intents": [
        "encode color",
        "encode",
        "map field",
        "visual encoding",
        "field mapping",
        "color",
        "fill or stroke mapping"
      ],
      "lifecycle": "Assignment",
      "resources": {
        "prerequisites": [
          "target mark",
          "field in the target dataset"
        ],
        "owns": [
          "color assignment"
        ],
        "idOptions": [
          "target",
          "scale"
        ]
      },
      "authoringRoles": [
        "H2"
      ],
      "wraps": [
        "editSemantic",
        "createScale",
        "layoutSeries"
      ],
      "editableVia": [
        "removeEncoding"
      ],
      "supports": {
        "entryPoints": [
          "default",
          "basic"
        ]
      },
      "units": [
        {
          "path": "temporalUnit",
          "unit": "temporal-input"
        }
      ],
      "inference": [
        {
          "input": "target",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "scale",
          "strategy": "explicit-current-unique-or-error"
        }
      ],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "target mark",
          "field in the target dataset"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "field",
          "required": true,
          "type": "string"
        },
        {
          "name": "target",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "fieldType",
          "required": false,
          "type": "\"nominal\" | \"ordinal\" | \"quantitative\" | \"temporal\" | undefined"
        },
        {
          "name": "scale",
          "required": false,
          "type": "DiscretizedColorScaleOptions | CategoricalColorScaleOptions | ContinuousColorScaleOptions | (Omit<...> & { ...; }) | undefined"
        },
        {
          "name": "palette",
          "required": false,
          "type": "Palette | undefined"
        },
        {
          "name": "layout",
          "required": false,
          "type": "ColorLayout | undefined"
        },
        {
          "name": "aggregate",
          "required": false,
          "type": "AggregateOperation | undefined"
        },
        {
          "name": "temporalUnit",
          "required": false,
          "type": "TemporalInputUnit | undefined"
        }
      ],
      "callPatterns": [
        "encodeColor({ field, target?, scale?, fieldType?, palette?, layout?, aggregate?, temporalUnit? })"
      ],
      "snippet": "program.encodeColor({ field: \"value\" })",
      "errors": [],
      "route": "/reference/actions/encodings/#encodecolor"
    },
    {
      "schemaVersion": 3,
      "name": "encodeStrokeDash",
      "layer": "user-facing",
      "domain": "encodings",
      "summary": "Create or replace nominal line-series or rule dash patterns, or apply one constant named/direct pattern.",
      "signature": "encodeStrokeDash(options: StrokeDashEncodingOptions): ChartProgram;",
      "intents": [
        "encode stroke dash",
        "encode",
        "map field",
        "visual encoding",
        "field mapping",
        "stroke dash",
        "line style"
      ],
      "lifecycle": "Assignment",
      "resources": {
        "prerequisites": [
          "target mark",
          "field in the target dataset"
        ],
        "owns": [
          "stroke dash assignment"
        ],
        "idOptions": [
          "target",
          "scale"
        ]
      },
      "authoringRoles": [
        "H2"
      ],
      "wraps": [
        "editSemantic",
        "createScale"
      ],
      "editableVia": [
        "removeEncoding"
      ],
      "supports": {
        "entryPoints": [
          "default",
          "basic"
        ]
      },
      "units": [],
      "inference": [
        {
          "input": "target",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "scale",
          "strategy": "explicit-current-unique-or-error"
        }
      ],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "target mark",
          "field in the target dataset"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "field",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "value",
          "required": false,
          "type": "DashPattern | DashStyle | undefined"
        },
        {
          "name": "target",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "fieldType",
          "required": false,
          "type": "\"nominal\" | undefined"
        },
        {
          "name": "scale",
          "required": false,
          "type": "DashScaleOptions | undefined"
        }
      ],
      "callPatterns": [
        "encodeStrokeDash({ target?, scale?, field?, value?, fieldType? })"
      ],
      "snippet": "program.encodeStrokeDash({ value: \"dashed\" })",
      "errors": [],
      "route": "/reference/actions/encodings/#encodestrokedash"
    },
    {
      "schemaVersion": 3,
      "name": "encodeStroke",
      "layer": "user-facing",
      "domain": "encodings",
      "summary": "Assign a constant non-empty stroke color or map a categorical, quantitative, or temporal field to the outline of a Point, Line, Area, Bar, Rect, Arc, Rule, or Tick.",
      "signature": "encodeStroke(options: StrokeEncodingOptions): ChartProgram;",
      "intents": [
        "encode stroke",
        "encode",
        "map field",
        "visual encoding",
        "field mapping",
        "stroke color",
        "outline"
      ],
      "lifecycle": "Assignment",
      "resources": {
        "prerequisites": [
          "target mark",
          "field in the target dataset"
        ],
        "owns": [
          "stroke color assignment"
        ],
        "idOptions": [
          "target",
          "scale"
        ]
      },
      "authoringRoles": [
        "H2"
      ],
      "wraps": [
        "editSemantic",
        "createScale"
      ],
      "editableVia": [
        "removeEncoding"
      ],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [
        {
          "path": "temporalUnit",
          "unit": "temporal-input"
        }
      ],
      "inference": [
        {
          "input": "target",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "scale",
          "strategy": "explicit-current-unique-or-error"
        }
      ],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "target mark",
          "field in the target dataset"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "target",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "value",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "field",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "fieldType",
          "required": false,
          "type": "\"nominal\" | \"ordinal\" | \"quantitative\" | \"temporal\" | undefined"
        },
        {
          "name": "temporalUnit",
          "required": false,
          "type": "TemporalInputUnit | undefined"
        },
        {
          "name": "scale",
          "required": false,
          "type": "DiscretizedColorScaleOptions | CategoricalColorScaleOptions | ContinuousColorScaleOptions | (Omit<...> & { ...; }) | undefined"
        }
      ],
      "callPatterns": [
        "encodeStroke({ target?, scale?, value?, field?, fieldType?, temporalUnit? })"
      ],
      "snippet": "program.encodeStroke({ value: \"#222222\" })",
      "errors": [],
      "route": "/reference/actions/encodings/#encodestroke"
    },
    {
      "schemaVersion": 3,
      "name": "encodeStrokeWidth",
      "layer": "user-facing",
      "domain": "encodings",
      "summary": "Assign a non-negative finite logical Canvas width to a Line or Rule.",
      "signature": "encodeStrokeWidth(options: StrokeWidthEncodingOptions): ChartProgram;",
      "intents": [
        "encode stroke width",
        "encode",
        "map field",
        "visual encoding",
        "field mapping",
        "stroke width",
        "line thickness"
      ],
      "lifecycle": "Assignment",
      "resources": {
        "prerequisites": [
          "target mark",
          "field in the target dataset"
        ],
        "owns": [
          "stroke width assignment"
        ],
        "idOptions": [
          "target",
          "scale"
        ]
      },
      "authoringRoles": [
        "H2"
      ],
      "wraps": [
        "editSemantic",
        "createScale"
      ],
      "editableVia": [
        "removeEncoding"
      ],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [],
      "inference": [
        {
          "input": "target",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "scale",
          "strategy": "explicit-current-unique-or-error"
        }
      ],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "target mark",
          "field in the target dataset"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "value",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "field",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "target",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "fieldType",
          "required": false,
          "type": "\"quantitative\" | undefined"
        },
        {
          "name": "scale",
          "required": false,
          "type": "NonPointQuantitativePositionScaleOptions | undefined"
        }
      ],
      "callPatterns": [
        "encodeStrokeWidth({ target?, scale?, value?, field?, fieldType? })"
      ],
      "snippet": "program.encodeStrokeWidth({ value: 2 })",
      "errors": [],
      "route": "/reference/actions/encodings/#encodestrokewidth"
    },
    {
      "schemaVersion": 3,
      "name": "encodeSize",
      "layer": "user-facing",
      "domain": "encodings",
      "summary": "Encode or replace a quantitative field as equal-area point size.",
      "signature": "encodeSize(options: SizeEncodingOptions): ChartProgram;",
      "intents": [
        "encode size",
        "encode",
        "map field",
        "visual encoding",
        "field mapping",
        "size",
        "quantitative size"
      ],
      "lifecycle": "Assignment",
      "resources": {
        "prerequisites": [
          "target mark",
          "field in the target dataset"
        ],
        "owns": [
          "size assignment"
        ],
        "idOptions": [
          "target",
          "scale"
        ]
      },
      "authoringRoles": [
        "H2"
      ],
      "wraps": [
        "editSemantic",
        "createScale"
      ],
      "editableVia": [
        "removeEncoding"
      ],
      "supports": {
        "entryPoints": [
          "default",
          "basic"
        ]
      },
      "units": [],
      "inference": [
        {
          "input": "target",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "scale",
          "strategy": "explicit-current-unique-or-error"
        }
      ],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "target mark",
          "field in the target dataset"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "field",
          "required": true,
          "type": "string"
        },
        {
          "name": "target",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "fieldType",
          "required": false,
          "type": "\"quantitative\" | undefined"
        },
        {
          "name": "scale",
          "required": false,
          "type": "SizeScaleOptions | undefined"
        }
      ],
      "callPatterns": [
        "encodeSize({ field, target?, scale?, fieldType? })"
      ],
      "snippet": "program.encodeSize({ field: \"value\" })",
      "errors": [],
      "route": "/reference/actions/encodings/#encodesize"
    },
    {
      "schemaVersion": 3,
      "name": "encodeShape",
      "layer": "user-facing",
      "domain": "encodings",
      "summary": "Encode or replace a nominal field with the shared 12-value point-shape vocabulary.",
      "signature": "encodeShape(options: ShapeEncodingOptions): ChartProgram;",
      "intents": [
        "encode shape",
        "encode",
        "map field",
        "visual encoding",
        "field mapping",
        "point shape",
        "categorical shape"
      ],
      "lifecycle": "Assignment",
      "resources": {
        "prerequisites": [
          "target mark",
          "field in the target dataset"
        ],
        "owns": [
          "point shape assignment"
        ],
        "idOptions": [
          "target",
          "scale"
        ]
      },
      "authoringRoles": [
        "H2"
      ],
      "wraps": [
        "editSemantic",
        "createScale"
      ],
      "editableVia": [
        "removeEncoding"
      ],
      "supports": {
        "entryPoints": [
          "default",
          "basic"
        ]
      },
      "units": [],
      "inference": [
        {
          "input": "target",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "scale",
          "strategy": "explicit-current-unique-or-error"
        }
      ],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "target mark",
          "field in the target dataset"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "field",
          "required": true,
          "type": "string"
        },
        {
          "name": "target",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "fieldType",
          "required": false,
          "type": "\"nominal\" | undefined"
        },
        {
          "name": "scale",
          "required": false,
          "type": "ShapeScaleOptions | undefined"
        }
      ],
      "callPatterns": [
        "encodeShape({ field, target?, scale?, fieldType? })"
      ],
      "snippet": "program.encodeShape({ field: \"value\" })",
      "errors": [],
      "route": "/reference/actions/encodings/#encodeshape"
    },
    {
      "schemaVersion": 3,
      "name": "encodeAngle",
      "layer": "user-facing",
      "domain": "encodings",
      "summary": "Maps a constant or quantitative field to point or tick rotation angle.",
      "signature": "encodeAngle(options: AngleEncodingOptions): ChartProgram;",
      "intents": [
        "encode angle",
        "encode",
        "map field",
        "visual encoding",
        "field mapping",
        "angle",
        "point or tick rotation"
      ],
      "lifecycle": "Assignment",
      "resources": {
        "prerequisites": [
          "target mark",
          "field in the target dataset"
        ],
        "owns": [
          "angle assignment"
        ],
        "idOptions": [
          "target"
        ]
      },
      "authoringRoles": [
        "H2"
      ],
      "wraps": [
        "editSemantic"
      ],
      "editableVia": [
        "removeEncoding"
      ],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [],
      "inference": [
        {
          "input": "target",
          "strategy": "explicit-current-unique-or-error"
        }
      ],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "target mark",
          "field in the target dataset"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "target",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "value",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "field",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "fieldType",
          "required": false,
          "type": "\"quantitative\" | undefined"
        }
      ],
      "callPatterns": [
        "encodeAngle({ target?, value })",
        "encodeAngle({ target?, field, fieldType? })"
      ],
      "snippet": "program.encodeAngle({ value: 45 })",
      "errors": [
        {
          "error": "Both value and field are supplied.",
          "fix": "Choose a constant angle or a quantitative field, not both."
        }
      ],
      "route": "/reference/actions/encodings/#encodeangle"
    },
    {
      "schemaVersion": 3,
      "name": "encodeOpacity",
      "layer": "user-facing",
      "domain": "encodings",
      "summary": "Apply a constant point/rule/line opacity from 0 to 1, or map a quantitative field through a linear opacity scale.",
      "signature": "encodeOpacity(options: OpacityEncodingOptions): ChartProgram;",
      "intents": [
        "encode opacity",
        "encode",
        "map field",
        "visual encoding",
        "field mapping",
        "opacity",
        "transparency"
      ],
      "lifecycle": "Assignment",
      "resources": {
        "prerequisites": [
          "target mark",
          "field in the target dataset"
        ],
        "owns": [
          "opacity assignment"
        ],
        "idOptions": [
          "target",
          "scale"
        ]
      },
      "authoringRoles": [
        "H2"
      ],
      "wraps": [
        "editSemantic",
        "createScale"
      ],
      "editableVia": [
        "removeEncoding"
      ],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [],
      "inference": [
        {
          "input": "target",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "scale",
          "strategy": "explicit-current-unique-or-error"
        }
      ],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "target mark",
          "field in the target dataset"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "value",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "field",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "target",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "fieldType",
          "required": false,
          "type": "\"quantitative\" | undefined"
        },
        {
          "name": "scale",
          "required": false,
          "type": "OpacityScaleOptions | undefined"
        }
      ],
      "callPatterns": [
        "encodeOpacity({ target?, scale?, value?, field?, fieldType? })"
      ],
      "snippet": "program.encodeOpacity({ value: 0.8 })",
      "errors": [],
      "route": "/reference/actions/encodings/#encodeopacity"
    },
    {
      "schemaVersion": 3,
      "name": "encodeRadius",
      "layer": "user-facing",
      "domain": "encodings",
      "summary": "Apply a constant point radius.",
      "signature": "encodeRadius(options: { value: number; target?: string }): ChartProgram;",
      "intents": [
        "encode radius",
        "encode",
        "map field",
        "visual encoding",
        "field mapping",
        "radius",
        "polar radius"
      ],
      "lifecycle": "Assignment",
      "resources": {
        "prerequisites": [
          "target mark"
        ],
        "owns": [
          "radius assignment"
        ],
        "idOptions": [
          "target"
        ]
      },
      "authoringRoles": [
        "H2"
      ],
      "wraps": [],
      "editableVia": [
        "removeEncoding"
      ],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [],
      "inference": [
        {
          "input": "target",
          "strategy": "explicit-current-unique-or-error"
        }
      ],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "target mark"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "value",
          "required": true,
          "type": "number"
        },
        {
          "name": "target",
          "required": false,
          "type": "string | undefined"
        }
      ],
      "callPatterns": [
        "encodeRadius({ value, target? })"
      ],
      "snippet": "program.encodeRadius({ value: 1 })",
      "errors": [],
      "route": "/reference/actions/encodings/#encoderadius"
    },
    {
      "schemaVersion": 3,
      "name": "encodeTheta",
      "layer": "user-facing",
      "domain": "encodings",
      "summary": "Encode Polar angle in clockwise degrees from 12 o'clock.",
      "signature": "encodeTheta(options: ThetaEncodingOptions): ChartProgram;",
      "intents": [
        "encode theta",
        "encode",
        "map field",
        "visual encoding",
        "field mapping",
        "theta",
        "angular position"
      ],
      "lifecycle": "Assignment",
      "resources": {
        "prerequisites": [
          "target mark",
          "field in the target dataset"
        ],
        "owns": [
          "theta assignment"
        ],
        "idOptions": [
          "target",
          "scale",
          "coordinate"
        ]
      },
      "authoringRoles": [
        "H2"
      ],
      "wraps": [
        "createCoordinate",
        "editSemantic",
        "createScale"
      ],
      "editableVia": [
        "removeEncoding"
      ],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [
        {
          "path": "temporalUnit",
          "unit": "temporal-input"
        }
      ],
      "inference": [
        {
          "input": "target",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "scale",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "coordinate",
          "strategy": "explicit-current-unique-or-error"
        }
      ],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "target mark",
          "field in the target dataset"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "field",
          "required": true,
          "type": "string"
        },
        {
          "name": "target",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "scale",
          "required": false,
          "type": "ThetaScaleOptions | undefined"
        },
        {
          "name": "coordinate",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "aggregate",
          "required": false,
          "type": "\"count\" | \"sum\" | undefined"
        },
        {
          "name": "weight",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "fieldType",
          "required": false,
          "type": "\"nominal\" | \"ordinal\" | \"quantitative\" | \"temporal\" | undefined"
        },
        {
          "name": "temporalUnit",
          "required": false,
          "type": "TemporalInputUnit | undefined"
        }
      ],
      "callPatterns": [
        "encodeTheta({ field, target?, scale?, coordinate?, aggregate?, weight?, fieldType?, temporalUnit? })"
      ],
      "snippet": "program.encodeTheta({ field: \"value\" })",
      "errors": [],
      "route": "/reference/actions/encodings/#encodetheta"
    },
    {
      "schemaVersion": 3,
      "name": "encodeR",
      "layer": "user-facing",
      "domain": "encodings",
      "summary": "Encode a quantitative field as Polar radial distance.",
      "signature": "encodeR(options: RadialEncodingOptions): ChartProgram;",
      "intents": [
        "encode radial",
        "encode",
        "map field",
        "visual encoding",
        "field mapping",
        "radial position",
        "polar distance"
      ],
      "lifecycle": "Assignment",
      "resources": {
        "prerequisites": [
          "target mark",
          "field in the target dataset"
        ],
        "owns": [
          "radial position assignment"
        ],
        "idOptions": [
          "target",
          "coordinate",
          "scale"
        ]
      },
      "authoringRoles": [
        "H2"
      ],
      "wraps": [
        "createCoordinate",
        "editSemantic",
        "createScale"
      ],
      "editableVia": [
        "removeEncoding"
      ],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [],
      "inference": [
        {
          "input": "target",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "coordinate",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "scale",
          "strategy": "explicit-current-unique-or-error"
        }
      ],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "target mark",
          "field in the target dataset"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "target",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "fieldType",
          "required": false,
          "type": "\"quantitative\" | undefined"
        },
        {
          "name": "coordinate",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "field",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "mapping",
          "required": false,
          "type": "false | RadialMapping | undefined"
        },
        {
          "name": "aggregate",
          "required": false,
          "type": "\"count\" | \"sum\" | undefined"
        },
        {
          "name": "scale",
          "required": false,
          "type": "RadiusScaleOptions | MeasuredRadiusScaleOptions | undefined"
        }
      ],
      "callPatterns": [
        "encodeR({ target?, coordinate?, scale?, fieldType?, field?, mapping?, aggregate? })"
      ],
      "snippet": "program.encodeR({ field: \"value\" })",
      "errors": [],
      "route": "/reference/actions/encodings/#encoder"
    },
    {
      "schemaVersion": 3,
      "name": "encodePointRadius",
      "layer": "user-facing",
      "domain": "encodings",
      "summary": "Apply a constant point glyph radius through a traced encodeRadius child.",
      "signature": "encodePointRadius(options: { value: number; target?: string }): ChartProgram;",
      "intents": [
        "encode point radius",
        "encode",
        "map field",
        "visual encoding",
        "field mapping",
        "point radius",
        "symbol radius"
      ],
      "lifecycle": "Assignment",
      "resources": {
        "prerequisites": [
          "target mark"
        ],
        "owns": [
          "point radius assignment"
        ],
        "idOptions": [
          "target"
        ]
      },
      "authoringRoles": [
        "H2"
      ],
      "wraps": [
        "encodeRadius"
      ],
      "editableVia": [
        "removePointRadius"
      ],
      "supports": {
        "entryPoints": [
          "default",
          "basic"
        ]
      },
      "units": [],
      "inference": [
        {
          "input": "target",
          "strategy": "explicit-current-unique-or-error"
        }
      ],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "target mark"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "value",
          "required": true,
          "type": "number"
        },
        {
          "name": "target",
          "required": false,
          "type": "string | undefined"
        }
      ],
      "callPatterns": [
        "encodePointRadius({ value, target? })"
      ],
      "snippet": "program.encodePointRadius({ value: 1 })",
      "errors": [],
      "route": "/reference/actions/encodings/#encodepointradius"
    },
    {
      "schemaVersion": 3,
      "name": "removePointRadius",
      "layer": "user-facing",
      "domain": "encodings",
      "summary": "Remove an explicit constant point glyph radius and restore the theme default.",
      "signature": "removePointRadius(options?: { target?: string }): ChartProgram;",
      "intents": [
        "remove point radius",
        "remove",
        "delete",
        "visual encoding",
        "field mapping",
        "point radius",
        "symbol radius"
      ],
      "lifecycle": "Assignment",
      "resources": {
        "prerequisites": [
          "existing point radius"
        ],
        "owns": [],
        "idOptions": [
          "target"
        ]
      },
      "authoringRoles": [
        "H2",
        "H3"
      ],
      "wraps": [
        "editGraphics"
      ],
      "editableVia": [],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [],
      "inference": [
        {
          "input": "target",
          "strategy": "explicit-current-unique-or-error"
        }
      ],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "existing point radius"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "target",
          "required": false,
          "type": "string | undefined"
        }
      ],
      "callPatterns": [
        "removePointRadius({ target? })"
      ],
      "snippet": "program.removePointRadius({})",
      "errors": [],
      "route": "/reference/actions/encodings/#removepointradius"
    },
    {
      "schemaVersion": 3,
      "name": "encodeXOffset",
      "layer": "user-facing",
      "domain": "encodings",
      "summary": "Create or compatibly update a categorical sub-slot scale within a bar, point, or rule x category.",
      "signature": "encodeXOffset(options: XOffsetEncodingOptions): ChartProgram;",
      "intents": [
        "encode x offset",
        "encode",
        "map field",
        "visual encoding",
        "field mapping",
        "x offset",
        "grouped horizontal offset"
      ],
      "lifecycle": "Assignment",
      "resources": {
        "prerequisites": [
          "target mark",
          "field in the target dataset"
        ],
        "owns": [
          "x offset assignment"
        ],
        "idOptions": [
          "target",
          "scale"
        ]
      },
      "authoringRoles": [
        "H2"
      ],
      "wraps": [
        "editSemantic",
        "createScale",
        "layoutSeries",
        "editScale"
      ],
      "editableVia": [
        "removeEncoding"
      ],
      "supports": {
        "entryPoints": [
          "default",
          "basic"
        ]
      },
      "units": [
        {
          "path": "paddingInner",
          "unit": "band-fraction"
        },
        {
          "path": "paddingOuter",
          "unit": "band-fraction"
        }
      ],
      "inference": [
        {
          "input": "target",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "scale",
          "strategy": "explicit-current-unique-or-error"
        }
      ],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "target mark",
          "field in the target dataset"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "field",
          "required": true,
          "type": "string"
        },
        {
          "name": "target",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "fieldType",
          "required": false,
          "type": "\"nominal\" | \"ordinal\" | undefined"
        },
        {
          "name": "scale",
          "required": false,
          "type": "OffsetScaleOptions | undefined"
        },
        {
          "name": "paddingInner",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "paddingOuter",
          "required": false,
          "type": "number | undefined"
        }
      ],
      "callPatterns": [
        "encodeXOffset({ field, target?, scale?, fieldType?, paddingInner?, paddingOuter? })"
      ],
      "snippet": "program.encodeXOffset({ field: \"value\" })",
      "errors": [],
      "route": "/reference/actions/encodings/#encodexoffset"
    },
    {
      "schemaVersion": 3,
      "name": "encodeYOffset",
      "layer": "user-facing",
      "domain": "encodings",
      "summary": "Create or compatibly update the corresponding categorical offset scale within a bar, point, or rule y category.",
      "signature": "encodeYOffset(options: YOffsetEncodingOptions): ChartProgram;",
      "intents": [
        "encode y offset",
        "encode",
        "map field",
        "visual encoding",
        "field mapping",
        "y offset",
        "grouped vertical offset"
      ],
      "lifecycle": "Assignment",
      "resources": {
        "prerequisites": [
          "target mark",
          "field in the target dataset"
        ],
        "owns": [
          "y offset assignment"
        ],
        "idOptions": [
          "target",
          "scale"
        ]
      },
      "authoringRoles": [
        "H2"
      ],
      "wraps": [
        "editSemantic",
        "createScale",
        "layoutSeries",
        "editScale"
      ],
      "editableVia": [
        "removeEncoding"
      ],
      "supports": {
        "entryPoints": [
          "default",
          "basic"
        ]
      },
      "units": [
        {
          "path": "paddingInner",
          "unit": "band-fraction"
        },
        {
          "path": "paddingOuter",
          "unit": "band-fraction"
        }
      ],
      "inference": [
        {
          "input": "target",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "scale",
          "strategy": "explicit-current-unique-or-error"
        }
      ],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "target mark",
          "field in the target dataset"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "field",
          "required": true,
          "type": "string"
        },
        {
          "name": "target",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "fieldType",
          "required": false,
          "type": "\"nominal\" | \"ordinal\" | undefined"
        },
        {
          "name": "scale",
          "required": false,
          "type": "OffsetScaleOptions | undefined"
        },
        {
          "name": "paddingInner",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "paddingOuter",
          "required": false,
          "type": "number | undefined"
        }
      ],
      "callPatterns": [
        "encodeYOffset({ field, target?, scale?, fieldType?, paddingInner?, paddingOuter? })"
      ],
      "snippet": "program.encodeYOffset({ field: \"value\" })",
      "errors": [],
      "route": "/reference/actions/encodings/#encodeyoffset"
    },
    {
      "schemaVersion": 3,
      "name": "encodeY2",
      "layer": "user-facing",
      "domain": "encodings",
      "summary": "Assign an area, ranged-bar, or rect upper edge, or a rule secondary y endpoint.",
      "signature": "encodeY2(options: SecondaryPositionEncodingOptions): ChartProgram;",
      "intents": [
        "encode y2",
        "encode",
        "map field",
        "visual encoding",
        "field mapping",
        "secondary y position",
        "y endpoint"
      ],
      "lifecycle": "Assignment",
      "resources": {
        "prerequisites": [
          "target mark",
          "field in the target dataset"
        ],
        "owns": [
          "secondary y position assignment"
        ],
        "idOptions": [
          "target",
          "scale",
          "coordinate"
        ]
      },
      "authoringRoles": [
        "H2"
      ],
      "wraps": [
        "editSemantic"
      ],
      "editableVia": [
        "removeEncoding"
      ],
      "supports": {
        "entryPoints": [
          "default",
          "basic"
        ]
      },
      "units": [
        {
          "path": "temporalUnit",
          "unit": "temporal-input"
        }
      ],
      "inference": [
        {
          "input": "target",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "scale",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "coordinate",
          "strategy": "explicit-current-unique-or-error"
        }
      ],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "target mark",
          "field in the target dataset"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "datum",
          "required": false,
          "type": "unknown"
        },
        {
          "name": "field",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "fieldType",
          "required": false,
          "type": "\"nominal\" | \"ordinal\" | \"quantitative\" | \"temporal\" | undefined"
        },
        {
          "name": "target",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "scale",
          "required": false,
          "type": "{ id?: string | undefined; } | { id?: string | undefined; } | { id?: string | undefined; } | undefined"
        },
        {
          "name": "coordinate",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "temporalUnit",
          "required": false,
          "type": "undefined"
        }
      ],
      "callPatterns": [
        "encodeY2({ target?, scale?, coordinate?, datum?, field?, fieldType?, temporalUnit? })"
      ],
      "snippet": "program.encodeY2({ field: \"y2\" })",
      "errors": [],
      "route": "/reference/actions/encodings/#encodey2"
    },
    {
      "schemaVersion": 3,
      "name": "encodeYRange",
      "layer": "user-facing",
      "domain": "encodings",
      "summary": "Atomically compose area or ranged-bar encodeY and encodeY2.",
      "signature": "encodeYRange(options: RangePositionEncodingOptions): ChartProgram;",
      "intents": [
        "encode y range",
        "encode",
        "map field",
        "visual encoding",
        "field mapping",
        "y interval",
        "vertical range"
      ],
      "lifecycle": "Assignment",
      "resources": {
        "prerequisites": [
          "target mark"
        ],
        "owns": [
          "y interval assignment"
        ],
        "idOptions": [
          "target",
          "coordinate",
          "scale"
        ]
      },
      "authoringRoles": [
        "H2"
      ],
      "wraps": [
        "encodeY",
        "encodeY2",
        "editSemantic"
      ],
      "editableVia": [
        "removeEncoding"
      ],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [
        {
          "path": "temporalUnit",
          "unit": "temporal-input"
        }
      ],
      "inference": [
        {
          "input": "target",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "coordinate",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "scale",
          "strategy": "explicit-current-unique-or-error"
        }
      ],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "target mark"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "target",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "coordinate",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "fieldType",
          "required": false,
          "type": "\"quantitative\" | \"temporal\" | undefined"
        },
        {
          "name": "temporalUnit",
          "required": false,
          "type": "TemporalInputUnit | undefined"
        },
        {
          "name": "scale",
          "required": false,
          "type": "NonPointQuantitativePositionScaleOptions | NonPointTemporalPositionScaleOptions | undefined"
        },
        {
          "name": "lower",
          "required": true,
          "type": "string | { datum: number; }"
        },
        {
          "name": "upper",
          "required": true,
          "type": "string | { datum: number; }"
        }
      ],
      "callPatterns": [
        "encodeYRange({ lower, upper, target?, coordinate?, scale?, fieldType?, temporalUnit? })"
      ],
      "snippet": "program.encodeYRange({ lower: \"lower\", upper: \"upper\" })",
      "errors": [],
      "route": "/reference/actions/encodings/#encodeyrange"
    },
    {
      "schemaVersion": 3,
      "name": "encodeXRange",
      "layer": "user-facing",
      "domain": "encodings",
      "summary": "Atomically compose area or ranged-bar encodeX and encodeX2.",
      "signature": "encodeXRange(options: RangePositionEncodingOptions): ChartProgram;",
      "intents": [
        "encode x range",
        "encode",
        "map field",
        "visual encoding",
        "field mapping",
        "x interval",
        "horizontal range"
      ],
      "lifecycle": "Assignment",
      "resources": {
        "prerequisites": [
          "target mark"
        ],
        "owns": [
          "x interval assignment"
        ],
        "idOptions": [
          "target",
          "coordinate",
          "scale"
        ]
      },
      "authoringRoles": [
        "H2"
      ],
      "wraps": [
        "encodeX",
        "encodeX2",
        "editSemantic"
      ],
      "editableVia": [
        "removeEncoding"
      ],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [
        {
          "path": "temporalUnit",
          "unit": "temporal-input"
        }
      ],
      "inference": [
        {
          "input": "target",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "coordinate",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "scale",
          "strategy": "explicit-current-unique-or-error"
        }
      ],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "target mark"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "target",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "coordinate",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "fieldType",
          "required": false,
          "type": "\"quantitative\" | \"temporal\" | undefined"
        },
        {
          "name": "temporalUnit",
          "required": false,
          "type": "TemporalInputUnit | undefined"
        },
        {
          "name": "scale",
          "required": false,
          "type": "NonPointQuantitativePositionScaleOptions | NonPointTemporalPositionScaleOptions | undefined"
        },
        {
          "name": "lower",
          "required": true,
          "type": "string | { datum: number; }"
        },
        {
          "name": "upper",
          "required": true,
          "type": "string | { datum: number; }"
        }
      ],
      "callPatterns": [
        "encodeXRange({ lower, upper, target?, coordinate?, scale?, fieldType?, temporalUnit? })"
      ],
      "snippet": "program.encodeXRange({ lower: \"lower\", upper: \"upper\" })",
      "errors": [],
      "route": "/reference/actions/encodings/#encodexrange"
    },
    {
      "schemaVersion": 3,
      "name": "encodeGroup",
      "layer": "user-facing",
      "domain": "encodings",
      "summary": "Split Line or ordinary Area paths by one nominal field or a non-empty unique tuple.",
      "signature": "encodeGroup(options: GroupEncodingOptions): ChartProgram;",
      "intents": [
        "encode group",
        "encode",
        "map field",
        "visual encoding",
        "field mapping",
        "series grouping",
        "group field"
      ],
      "lifecycle": "Assignment",
      "resources": {
        "prerequisites": [
          "target mark",
          "field in the target dataset"
        ],
        "owns": [
          "series grouping assignment"
        ],
        "idOptions": [
          "target"
        ]
      },
      "authoringRoles": [
        "H2"
      ],
      "wraps": [
        "editSemantic"
      ],
      "editableVia": [
        "removeEncoding"
      ],
      "supports": {
        "entryPoints": [
          "default",
          "basic"
        ]
      },
      "units": [],
      "inference": [
        {
          "input": "target",
          "strategy": "explicit-current-unique-or-error"
        }
      ],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "target mark",
          "field in the target dataset"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "target",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "fieldType",
          "required": false,
          "type": "\"nominal\" | undefined"
        },
        {
          "name": "field",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "fields",
          "required": false,
          "type": "readonly [string, ...string[]] | undefined"
        }
      ],
      "callPatterns": [
        "encodeGroup({ field, target?, fieldType? })",
        "encodeGroup({ fields: [first, ...rest], target?, fieldType? })"
      ],
      "snippet": "program.encodeGroup({ field: \"country\" })",
      "errors": [],
      "route": "/reference/actions/encodings/#encodegroup"
    },
    {
      "schemaVersion": 3,
      "name": "encodePathOrder",
      "layer": "user-facing",
      "domain": "encodings",
      "summary": "Order vertices within each compatible Cartesian line or ranged-area series.",
      "signature": "encodePathOrder(options: PathOrderEncodingOptions): ChartProgram;",
      "intents": [
        "encode path order",
        "encode",
        "map field",
        "visual encoding",
        "field mapping",
        "path order",
        "line sorting"
      ],
      "lifecycle": "Assignment",
      "resources": {
        "prerequisites": [
          "target mark",
          "field in the target dataset"
        ],
        "owns": [
          "path order assignment"
        ],
        "idOptions": [
          "target"
        ]
      },
      "authoringRoles": [
        "H2"
      ],
      "wraps": [
        "editSemantic"
      ],
      "editableVia": [
        "removePathOrder"
      ],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [],
      "inference": [
        {
          "input": "target",
          "strategy": "explicit-current-unique-or-error"
        }
      ],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "target mark",
          "field in the target dataset"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "target",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "field",
          "required": true,
          "type": "string"
        },
        {
          "name": "fieldType",
          "required": false,
          "type": "\"quantitative\" | undefined"
        },
        {
          "name": "order",
          "required": false,
          "type": "\"ascending\" | \"descending\" | undefined"
        }
      ],
      "callPatterns": [
        "encodePathOrder({ field, target?, fieldType?, order? })"
      ],
      "snippet": "program.encodePathOrder({ field: \"value\" })",
      "errors": [],
      "route": "/reference/actions/encodings/#encodepathorder"
    },
    {
      "schemaVersion": 3,
      "name": "encodeParallelCoordinates",
      "layer": "user-facing",
      "domain": "encodings",
      "summary": "Atomically assign ordered dimensions and their local scales to one line mark.",
      "signature": "encodeParallelCoordinates(options: ParallelCoordinatesEncodingOptions): ChartProgram;",
      "intents": [
        "encode parallel coordinates",
        "encode",
        "map field",
        "visual encoding",
        "field mapping",
        "parallel coordinates",
        "multiple dimensions"
      ],
      "lifecycle": "Assignment",
      "resources": {
        "prerequisites": [
          "target mark"
        ],
        "owns": [
          "parallel coordinates assignment"
        ],
        "idOptions": [
          "target",
          "coordinate"
        ]
      },
      "authoringRoles": [
        "H2"
      ],
      "wraps": [
        "editSemantic",
        "createScale"
      ],
      "editableVia": [
        "removeEncoding"
      ],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [],
      "inference": [
        {
          "input": "target",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "coordinate",
          "strategy": "explicit-current-unique-or-error"
        }
      ],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "target mark"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "target",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "coordinate",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "dimensions",
          "required": true,
          "type": "readonly [ParallelDimension, ParallelDimension, ...ParallelDimension[]]"
        },
        {
          "name": "key",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "missing",
          "required": false,
          "type": "ParallelMissingPolicy | undefined"
        }
      ],
      "callPatterns": [
        "encodeParallelCoordinates({ dimensions, target?, coordinate?, key?, missing? })"
      ],
      "snippet": "program.encodeParallelCoordinates({ dimensions: [\"a\", \"b\"] })",
      "errors": [],
      "route": "/reference/actions/encodings/#encodeparallelcoordinates"
    },
    {
      "schemaVersion": 3,
      "name": "removePathOrder",
      "layer": "user-facing",
      "domain": "encodings",
      "summary": "Remove explicit path topology and restore the mark's automatic independent- position ordering.",
      "signature": "removePathOrder(options?: RemovePathOrderOptions): ChartProgram;",
      "intents": [
        "remove path order",
        "remove",
        "delete",
        "visual encoding",
        "field mapping",
        "path order",
        "line sorting"
      ],
      "lifecycle": "Assignment",
      "resources": {
        "prerequisites": [
          "existing path order"
        ],
        "owns": [],
        "idOptions": [
          "target"
        ]
      },
      "authoringRoles": [
        "H2",
        "H3"
      ],
      "wraps": [
        "editSemantic"
      ],
      "editableVia": [],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [],
      "inference": [
        {
          "input": "target",
          "strategy": "explicit-current-unique-or-error"
        }
      ],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "existing path order"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "target",
          "required": false,
          "type": "string | undefined"
        }
      ],
      "callPatterns": [
        "removePathOrder({ target? })"
      ],
      "snippet": "program.removePathOrder({})",
      "errors": [],
      "route": "/reference/actions/encodings/#removepathorder"
    },
    {
      "schemaVersion": 3,
      "name": "orderCategories",
      "layer": "user-facing",
      "domain": "encodings",
      "summary": "Assign explicit or computed semantic order to a nominal/ordinal Cartesian x/y or Polar theta position.",
      "signature": "orderCategories(options: OrderCategoriesOptions): ChartProgram;",
      "intents": [
        "order categories",
        "order",
        "sort categories",
        "visual encoding",
        "field mapping",
        "category order",
        "ordinal sorting"
      ],
      "lifecycle": "Assignment",
      "resources": {
        "prerequisites": [
          "existing category order"
        ],
        "owns": [
          "category order"
        ],
        "idOptions": [
          "target"
        ]
      },
      "authoringRoles": [
        "H2"
      ],
      "wraps": [
        "editSemantic"
      ],
      "editableVia": [
        "removeCategoryOrder"
      ],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [],
      "inference": [
        {
          "input": "target",
          "strategy": "explicit-current-unique-or-error"
        }
      ],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "existing category order"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "target",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "channel",
          "required": true,
          "type": "\"theta\" | \"x\" | \"y\""
        },
        {
          "name": "values",
          "required": false,
          "type": "readonly CategoryValue[] | undefined"
        },
        {
          "name": "by",
          "required": false,
          "type": "\"category\" | \"count\" | CategoryOrderSummary | undefined"
        },
        {
          "name": "direction",
          "required": false,
          "type": "\"ascending\" | \"descending\" | undefined"
        }
      ],
      "callPatterns": [
        "orderCategories({ channel, target?, values?, by?, direction? })"
      ],
      "snippet": "program.orderCategories({ channel: \"x\", by: \"category\" })",
      "errors": [],
      "route": "/reference/actions/encodings/#ordercategories"
    },
    {
      "schemaVersion": 3,
      "name": "removeCategoryOrder",
      "layer": "user-facing",
      "domain": "encodings",
      "summary": "Remove one active category-order assignment and restore automatic first-appearance order.",
      "signature": "removeCategoryOrder(options: RemoveCategoryOrderOptions): ChartProgram;",
      "intents": [
        "remove category order",
        "remove",
        "delete",
        "visual encoding",
        "field mapping",
        "category order",
        "explicit ordinal sorting"
      ],
      "lifecycle": "Assignment",
      "resources": {
        "prerequisites": [
          "existing category order"
        ],
        "owns": [],
        "idOptions": [
          "target"
        ]
      },
      "authoringRoles": [
        "H2",
        "H3"
      ],
      "wraps": [
        "editSemantic"
      ],
      "editableVia": [],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [],
      "inference": [
        {
          "input": "target",
          "strategy": "explicit-current-unique-or-error"
        }
      ],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "existing category order"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "target",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "channel",
          "required": true,
          "type": "\"theta\" | \"x\" | \"y\""
        }
      ],
      "callPatterns": [
        "removeCategoryOrder({ channel, target? })"
      ],
      "snippet": "program.removeCategoryOrder({ channel: \"x\" })",
      "errors": [],
      "route": "/reference/actions/encodings/#removecategoryorder"
    },
    {
      "schemaVersion": 3,
      "name": "removeEncoding",
      "layer": "user-facing",
      "domain": "encodings",
      "summary": "Remove one active semantic encoding, its generated companions, matching guide blocks, and stale concrete values.",
      "signature": "removeEncoding(options: { target?: string; channel: | \"x\" | \"y\" | \"x2\" | \"y2\" | \"xOffset\" | \"yOffset\" | \"theta\" | \"radius\" | \"color\" | \"stroke\" | \"strokeDash\" | \"strokeWidth\" | \"size\" | \"shape\" | \"angle\" | \"group\" | \"opacity\" | \"text\"; }): ChartProgram;",
      "intents": [
        "remove encoding",
        "remove",
        "delete",
        "visual encoding",
        "field mapping",
        "one assigned channel"
      ],
      "lifecycle": "Assignment",
      "resources": {
        "prerequisites": [
          "existing visual encoding"
        ],
        "owns": [],
        "idOptions": [
          "target"
        ]
      },
      "authoringRoles": [
        "H2",
        "H3"
      ],
      "wraps": [
        "editSemantic",
        "editGraphics"
      ],
      "editableVia": [],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [],
      "inference": [
        {
          "input": "target",
          "strategy": "explicit-current-unique-or-error"
        }
      ],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "existing visual encoding"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "target",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "channel",
          "required": true,
          "type": "\"angle\" | \"color\" | \"group\" | \"opacity\" | \"radius\" | \"shape\" | \"size\" | \"stroke\" | \"strokeDash\" | \"strokeWidth\" | \"text\" | \"theta\" | \"x\" | \"x2\" | \"xOffset\" | \"y\" | \"y2\" | \"yOffset\""
        }
      ],
      "callPatterns": [
        "removeEncoding({ channel, target? })"
      ],
      "snippet": "program.removeEncoding({ channel: \"x\" })",
      "errors": [
        {
          "error": "The selected channel is not assigned to the target mark.",
          "fix": "Pass a currently assigned channel and disambiguate target when needed."
        }
      ],
      "route": "/reference/actions/encodings/#removeencoding"
    },
    {
      "schemaVersion": 3,
      "name": "encodeText",
      "layer": "user-facing",
      "domain": "encodings",
      "summary": "Assign exactly one field, constant value, or semantic content to a text mark.",
      "signature": "encodeText(options: TextEncodingOptions): ChartProgram;",
      "intents": [
        "encode text",
        "encode",
        "map field",
        "visual encoding",
        "field mapping",
        "text content",
        "data-driven labels"
      ],
      "lifecycle": "Assignment",
      "resources": {
        "prerequisites": [
          "target mark",
          "field in the target dataset"
        ],
        "owns": [
          "text content assignment"
        ],
        "idOptions": [
          "target"
        ]
      },
      "authoringRoles": [
        "H2"
      ],
      "wraps": [
        "editSemantic"
      ],
      "editableVia": [
        "removeEncoding"
      ],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [],
      "inference": [
        {
          "input": "target",
          "strategy": "explicit-current-unique-or-error"
        }
      ],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "target mark",
          "field in the target dataset"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "target",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "format",
          "required": false,
          "type": "ValueFormat | undefined"
        },
        {
          "name": "field",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "value",
          "required": false,
          "type": "unknown"
        },
        {
          "name": "content",
          "required": false,
          "type": "\"category\" | \"share\" | \"value\" | undefined"
        },
        {
          "name": "normalizeBy",
          "required": false,
          "type": "\"category\" | \"source\" | undefined"
        }
      ],
      "callPatterns": [
        "encodeText({ target?, format?, field?, value?, content?, normalizeBy? })"
      ],
      "snippet": "program.encodeText({ field: \"label\" })",
      "errors": [],
      "route": "/reference/actions/encodings/#encodetext"
    },
    {
      "schemaVersion": 3,
      "name": "encodeHistogram",
      "layer": "user-facing",
      "domain": "encodings",
      "summary": "Compose binned bar encodeX and count encodeY as one atomic histogram action.",
      "signature": "encodeHistogram(options: HistogramEncodingOptions): ChartProgram;",
      "intents": [
        "encode histogram",
        "encode",
        "map field",
        "visual encoding",
        "field mapping",
        "histogram",
        "one-dimensional distribution"
      ],
      "lifecycle": "Assignment",
      "resources": {
        "prerequisites": [
          "target mark",
          "field in the target dataset"
        ],
        "owns": [
          "histogram assignment"
        ],
        "idOptions": [
          "target",
          "coordinate",
          "xScale",
          "yScale"
        ]
      },
      "authoringRoles": [
        "H2"
      ],
      "wraps": [
        "encodeX",
        "encodeY"
      ],
      "editableVia": [
        "removeEncoding"
      ],
      "supports": {
        "entryPoints": [
          "default",
          "basic"
        ]
      },
      "units": [
        {
          "path": "maxBins",
          "unit": "count"
        }
      ],
      "inference": [
        {
          "input": "target",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "coordinate",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "xScale",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "yScale",
          "strategy": "explicit-current-unique-or-error"
        }
      ],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "target mark",
          "field in the target dataset"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "field",
          "required": true,
          "type": "string"
        },
        {
          "name": "target",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "coordinate",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "stack",
          "required": false,
          "type": "StackMode | undefined"
        },
        {
          "name": "xScale",
          "required": false,
          "type": "NonPointQuantitativePositionScaleOptions | undefined"
        },
        {
          "name": "yScale",
          "required": false,
          "type": "NonPointZeroSupportingPositionScaleOptions | undefined"
        },
        {
          "name": "weight",
          "required": false,
          "type": "StatisticalWeight | undefined"
        },
        {
          "name": "maxBins",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "binStep",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "binBoundaries",
          "required": false,
          "type": "readonly [number, number, ...number[]] | undefined"
        }
      ],
      "callPatterns": [
        "encodeHistogram({ field, target?, coordinate?, xScale?, yScale?, stack?, weight?, maxBins? })"
      ],
      "snippet": "program.encodeHistogram({ field: \"value\" })",
      "errors": [],
      "route": "/reference/actions/encodings/#encodehistogram"
    },
    {
      "schemaVersion": 3,
      "name": "encodeDensity",
      "layer": "user-facing",
      "domain": "encodings",
      "summary": "Create immutable KDE data, bind it to an area mark, encode its value and density fields, and materialize baseline-closed paths.",
      "signature": "encodeDensity(options: DensityEncodingOptions): ChartProgram;",
      "intents": [
        "encode density",
        "encode",
        "map field",
        "visual encoding",
        "field mapping",
        "density plot",
        "kernel density estimate"
      ],
      "lifecycle": "Assignment",
      "resources": {
        "prerequisites": [
          "target mark",
          "field in the target dataset"
        ],
        "owns": [
          "density plot assignment"
        ],
        "idOptions": [
          "source",
          "target",
          "coordinate"
        ]
      },
      "authoringRoles": [
        "H2"
      ],
      "wraps": [
        "createDensityData",
        "editSemantic",
        "encodeX",
        "encodeY",
        "encodeGroup"
      ],
      "editableVia": [
        "editDensity",
        "removeEncoding"
      ],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [
        {
          "path": "bandwidth",
          "unit": "data-value"
        },
        {
          "path": "steps",
          "unit": "count"
        }
      ],
      "inference": [
        {
          "input": "source",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "bandwidth",
          "strategy": "documented-auto"
        },
        {
          "input": "extent",
          "strategy": "documented-auto"
        },
        {
          "input": "target",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "coordinate",
          "strategy": "explicit-current-unique-or-error"
        }
      ],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "target mark",
          "field in the target dataset"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "source",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "field",
          "required": true,
          "type": "string"
        },
        {
          "name": "bandwidth",
          "required": false,
          "type": "number | \"auto\" | undefined"
        },
        {
          "name": "extent",
          "required": false,
          "type": "\"auto\" | readonly [number, number] | undefined"
        },
        {
          "name": "steps",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "kernel",
          "required": false,
          "type": "DensityKernel | undefined"
        },
        {
          "name": "normalization",
          "required": false,
          "type": "DensityNormalization | undefined"
        },
        {
          "name": "weight",
          "required": false,
          "type": "StatisticalWeight | undefined"
        },
        {
          "name": "missing",
          "required": false,
          "type": "\"drop\" | \"error\" | undefined"
        },
        {
          "name": "as",
          "required": false,
          "type": "readonly [string, string] | undefined"
        },
        {
          "name": "groupBy",
          "required": false,
          "type": "string | false | undefined"
        },
        {
          "name": "target",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "densityChannel",
          "required": false,
          "type": "\"x\" | \"y\" | undefined"
        },
        {
          "name": "coordinate",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "valueScale",
          "required": false,
          "type": "NonPointQuantitativePositionScaleOptions | undefined"
        },
        {
          "name": "placement",
          "required": false,
          "type": "BaselineDensityPlacement | CategoryDensityPlacement | undefined"
        },
        {
          "name": "densityScale",
          "required": false,
          "type": "NonPointZeroSupportingPositionScaleOptions | undefined"
        }
      ],
      "callPatterns": [
        "encodeDensity({ field, source?, target?, coordinate?, bandwidth?, extent?, steps?, kernel? })"
      ],
      "snippet": "program.encodeDensity({ field: \"value\" })",
      "errors": [],
      "route": "/reference/actions/encodings/#encodedensity"
    },
    {
      "schemaVersion": 3,
      "name": "editDensity",
      "layer": "user-facing",
      "domain": "encodings",
      "summary": "Create an immutable density-data revision, rebind the selected density area, and rematerialize its graphical consumers.",
      "signature": "editDensity(options: EditDensityOptions): ChartProgram;",
      "intents": [
        "edit density",
        "edit",
        "change",
        "visual encoding",
        "field mapping",
        "density plot",
        "kernel density estimate"
      ],
      "lifecycle": "Mutable resource",
      "resources": {
        "prerequisites": [
          "existing density plot"
        ],
        "owns": [],
        "idOptions": [
          "target",
          "source"
        ]
      },
      "authoringRoles": [
        "H2",
        "H3"
      ],
      "wraps": [
        "createDensityData"
      ],
      "editableVia": [
        "editDensity"
      ],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [
        {
          "path": "bandwidth",
          "unit": "data-value"
        },
        {
          "path": "steps",
          "unit": "count"
        }
      ],
      "inference": [
        {
          "input": "target",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "source",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "bandwidth",
          "strategy": "documented-auto"
        },
        {
          "input": "extent",
          "strategy": "documented-auto"
        }
      ],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "existing density plot"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "target",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "source",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "field",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "groupBy",
          "required": false,
          "type": "string | false | undefined"
        },
        {
          "name": "bandwidth",
          "required": false,
          "type": "number | \"auto\" | undefined"
        },
        {
          "name": "extent",
          "required": false,
          "type": "\"auto\" | readonly [number, number] | undefined"
        },
        {
          "name": "steps",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "kernel",
          "required": false,
          "type": "DensityKernel | undefined"
        },
        {
          "name": "normalization",
          "required": false,
          "type": "DensityNormalization | undefined"
        },
        {
          "name": "weight",
          "required": false,
          "type": "false | StatisticalWeight | undefined"
        },
        {
          "name": "densityChannel",
          "required": false,
          "type": "\"x\" | \"y\" | undefined"
        },
        {
          "name": "valueScale",
          "required": false,
          "type": "NonPointQuantitativePositionScaleOptions | undefined"
        },
        {
          "name": "placement",
          "required": false,
          "type": "DensityPlacement | undefined"
        }
      ],
      "callPatterns": [
        "editDensity({ target?, source?, field?, groupBy?, bandwidth?, extent?, steps?, kernel? })"
      ],
      "snippet": "program.editDensity({ field: \"value\" })",
      "errors": [],
      "route": "/reference/actions/encodings/#editdensity"
    },
    {
      "schemaVersion": 3,
      "name": "encodeHorizon",
      "layer": "user-facing",
      "domain": "encodings",
      "summary": "Create immutable folded-band data, bind it to an area mark, and author the ordinary x, y/y2, group, and color encodings needed for a compact Horizon chart.",
      "signature": "encodeHorizon(options?: HorizonEncodingOptions): ChartProgram;",
      "intents": [
        "encode horizon",
        "encode",
        "map field",
        "visual encoding",
        "field mapping",
        "horizon chart",
        "banded time series"
      ],
      "lifecycle": "Assignment",
      "resources": {
        "prerequisites": [
          "target mark"
        ],
        "owns": [
          "horizon chart assignment"
        ],
        "idOptions": [
          "target",
          "source"
        ]
      },
      "authoringRoles": [
        "H2"
      ],
      "wraps": [
        "editSemantic",
        "encodeX",
        "encodeY",
        "encodeGroup",
        "encodeY2",
        "encodeColor",
        "editAreaMark"
      ],
      "editableVia": [
        "editHorizon",
        "removeEncoding"
      ],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [
        {
          "path": "bands",
          "unit": "count"
        }
      ],
      "inference": [
        {
          "input": "target",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "source",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "extent",
          "strategy": "documented-auto"
        }
      ],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "target mark"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "target",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "source",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "x",
          "required": false,
          "type": "string | HorizonXEncoding | undefined"
        },
        {
          "name": "y",
          "required": false,
          "type": "string | HorizonYEncoding | undefined"
        },
        {
          "name": "groupBy",
          "required": false,
          "type": "string | false | undefined"
        },
        {
          "name": "bands",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "baseline",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "extent",
          "required": false,
          "type": "number | \"auto\" | undefined"
        },
        {
          "name": "resolve",
          "required": false,
          "type": "HorizonResolution | undefined"
        },
        {
          "name": "missing",
          "required": false,
          "type": "HorizonMissingPolicy | undefined"
        },
        {
          "name": "overflow",
          "required": false,
          "type": "HorizonOverflowPolicy | undefined"
        },
        {
          "name": "palette",
          "required": false,
          "type": "HorizonPaletteOptions | undefined"
        }
      ],
      "callPatterns": [
        "encodeHorizon({ target?, source?, x?, y?, groupBy?, bands?, baseline?, extent? })"
      ],
      "snippet": "program.encodeHorizon({ x: \"x\" })",
      "errors": [],
      "route": "/reference/actions/encodings/#encodehorizon"
    },
    {
      "schemaVersion": 3,
      "name": "editHorizon",
      "layer": "user-facing",
      "domain": "encodings",
      "summary": "Create and bind an immutable Horizon revision, preserve omitted settings and scale identities, and rematerialize affected consumers.",
      "signature": "editHorizon(options: EditHorizonOptions): ChartProgram;",
      "intents": [
        "edit horizon",
        "edit",
        "change",
        "visual encoding",
        "field mapping",
        "horizon chart",
        "banded time series"
      ],
      "lifecycle": "Mutable resource",
      "resources": {
        "prerequisites": [
          "existing horizon chart"
        ],
        "owns": [],
        "idOptions": [
          "target",
          "source"
        ]
      },
      "authoringRoles": [
        "H2",
        "H3"
      ],
      "wraps": [
        "editScale"
      ],
      "editableVia": [
        "editHorizon"
      ],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [
        {
          "path": "bands",
          "unit": "count"
        }
      ],
      "inference": [
        {
          "input": "target",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "source",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "extent",
          "strategy": "documented-auto"
        }
      ],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "existing horizon chart"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "groupBy",
          "required": false,
          "type": "string | false | undefined"
        },
        {
          "name": "target",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "source",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "x",
          "required": false,
          "type": "string | HorizonXEncoding | undefined"
        },
        {
          "name": "y",
          "required": false,
          "type": "string | HorizonYEncoding | undefined"
        },
        {
          "name": "bands",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "baseline",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "extent",
          "required": false,
          "type": "number | \"auto\" | undefined"
        },
        {
          "name": "resolve",
          "required": false,
          "type": "HorizonResolution | undefined"
        },
        {
          "name": "missing",
          "required": false,
          "type": "HorizonMissingPolicy | undefined"
        },
        {
          "name": "overflow",
          "required": false,
          "type": "HorizonOverflowPolicy | undefined"
        },
        {
          "name": "palette",
          "required": false,
          "type": "HorizonPaletteOptions | undefined"
        }
      ],
      "callPatterns": [
        "editHorizon({ target?, source?, groupBy?, x?, y?, bands?, baseline?, extent? })"
      ],
      "snippet": "program.editHorizon({ groupBy: \"groupBy\" })",
      "errors": [],
      "route": "/reference/actions/encodings/#edithorizon"
    },
    {
      "schemaVersion": 3,
      "name": "encodeBarWidth",
      "layer": "user-facing",
      "domain": "encodings",
      "summary": "Set aggregate or ranged bar width before or after its positions are complete.",
      "signature": "encodeBarWidth(options?: BarWidthOptions): ChartProgram;",
      "intents": [
        "encode bar width",
        "encode",
        "map field",
        "visual encoding",
        "field mapping",
        "bar width",
        "band occupancy"
      ],
      "lifecycle": "Assignment",
      "resources": {
        "prerequisites": [
          "target mark"
        ],
        "owns": [
          "bar width assignment"
        ],
        "idOptions": [
          "target"
        ]
      },
      "authoringRoles": [
        "H2"
      ],
      "wraps": [],
      "editableVia": [
        "removeEncoding"
      ],
      "supports": {
        "entryPoints": [
          "default",
          "basic"
        ]
      },
      "units": [],
      "inference": [
        {
          "input": "target",
          "strategy": "explicit-current-unique-or-error"
        }
      ],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "target mark"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "target",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "band",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "pixels",
          "required": false,
          "type": "number | undefined"
        }
      ],
      "callPatterns": [
        "encodeBarWidth({ target?, band?, pixels? })"
      ],
      "snippet": "program.encodeBarWidth({ band: 1 })",
      "errors": [],
      "route": "/reference/actions/encodings/#encodebarwidth"
    },
    {
      "schemaVersion": 3,
      "name": "createRegression",
      "layer": "user-facing",
      "domain": "statistics",
      "summary": "Infer an eligible point layer and create immutable fitted data, optional grouped interval-band paths, and grouped line paths.",
      "signature": "createRegression(options?: RegressionOptions): ChartProgram;",
      "intents": [
        "create regression",
        "create",
        "add",
        "statistical layer",
        "statistical transform",
        "regression",
        "fitted line and band"
      ],
      "lifecycle": "Mutable resource",
      "resources": {
        "prerequisites": [
          "statistical source and coordinate context"
        ],
        "owns": [
          "regression"
        ],
        "idOptions": [
          "target"
        ]
      },
      "authoringRoles": [
        "H1"
      ],
      "wraps": [
        "createRegressionData",
        "createRegressionBand",
        "createRegressionLine"
      ],
      "editableVia": [
        "editRegression"
      ],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [],
      "inference": [
        {
          "input": "target",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "omitted optional options",
          "strategy": "documented-default"
        }
      ],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "statistical source and coordinate context"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "target",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "x",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "y",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "groupBy",
          "required": false,
          "type": "string | false | undefined"
        },
        {
          "name": "line",
          "required": false,
          "type": "(StrokeStyleDetails & { strokeWidth?: number | undefined; curve?: CurveInterpolation | undefined; }) | undefined"
        },
        {
          "name": "sourceBinding",
          "required": false,
          "type": "\"fixed\" | \"follow\" | undefined"
        },
        {
          "name": "missing",
          "required": false,
          "type": "\"drop\" | \"error\" | undefined"
        },
        {
          "name": "method",
          "required": false,
          "type": "\"linear\" | \"loess\" | \"polynomial\" | undefined"
        },
        {
          "name": "degree",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "span",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "confidenceMethod",
          "required": false,
          "type": "ConfidenceIntervalMethod | undefined"
        },
        {
          "name": "level",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "confidence",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "interval",
          "required": false,
          "type": "false | RegressionInterval | undefined"
        },
        {
          "name": "predict",
          "required": false,
          "type": "RegressionPredictOptions | undefined"
        },
        {
          "name": "band",
          "required": false,
          "type": "false | RegressionBandOptions | undefined"
        }
      ],
      "callPatterns": [
        "createRegression({ target?, method: linear | polynomial, confidence? })",
        "createRegression({ target?, method: loess, span? })"
      ],
      "snippet": "program.createRegression({})",
      "errors": [],
      "route": "/reference/actions/statistics/#createregression"
    },
    {
      "schemaVersion": 3,
      "name": "editRegression",
      "layer": "user-facing",
      "domain": "statistics",
      "summary": "Revise the model through its stable point owner.",
      "signature": "editRegression(options: EditRegressionOptions): ChartProgram;",
      "intents": [
        "edit regression",
        "edit",
        "change",
        "statistical layer",
        "statistical transform",
        "regression",
        "fitted line and band"
      ],
      "lifecycle": "Mutable resource",
      "resources": {
        "prerequisites": [
          "existing regression",
          "statistical source and coordinate context"
        ],
        "owns": [],
        "idOptions": [
          "target",
          "data"
        ]
      },
      "authoringRoles": [
        "H1",
        "H3"
      ],
      "wraps": [
        "createRegressionData",
        "editRegressionBand",
        "editRegressionLine"
      ],
      "editableVia": [
        "editRegression"
      ],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [],
      "inference": [
        {
          "input": "target",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "data",
          "strategy": "explicit-current-unique-or-error"
        }
      ],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "existing regression",
          "statistical source and coordinate context"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "target",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "data",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "x",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "y",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "groupBy",
          "required": false,
          "type": "string | false | undefined"
        },
        {
          "name": "method",
          "required": false,
          "type": "RegressionMethod | undefined"
        },
        {
          "name": "degree",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "span",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "confidenceMethod",
          "required": false,
          "type": "ConfidenceIntervalMethod | undefined"
        },
        {
          "name": "level",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "confidence",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "interval",
          "required": false,
          "type": "false | RegressionInterval | undefined"
        },
        {
          "name": "missing",
          "required": false,
          "type": "\"drop\" | \"error\" | undefined"
        },
        {
          "name": "predict",
          "required": false,
          "type": "false | RegressionPredictOptions | undefined"
        },
        {
          "name": "band",
          "required": false,
          "type": "false | RegressionBandOptions | undefined"
        },
        {
          "name": "line",
          "required": false,
          "type": "(StrokeStyleDetails & { strokeWidth?: number | undefined; curve?: CurveInterpolation | undefined; }) | undefined"
        },
        {
          "name": "sourceBinding",
          "required": false,
          "type": "\"fixed\" | \"follow\" | undefined"
        }
      ],
      "callPatterns": [
        "editRegression({ target?, data?, x?, y?, groupBy?, method?, degree?, span? })"
      ],
      "snippet": "program.editRegression({ x: \"x\" })",
      "errors": [],
      "route": "/reference/actions/statistics/#editregression"
    },
    {
      "schemaVersion": 3,
      "name": "createErrorBar",
      "layer": "user-facing",
      "domain": "statistics",
      "summary": "Create vertical or horizontal statistical or explicit intervals.",
      "signature": "createErrorBar(options?: ErrorBarOptions): ChartProgram;",
      "intents": [
        "create error bar",
        "create",
        "add",
        "statistical layer",
        "statistical transform",
        "error bar",
        "uncertainty whisker"
      ],
      "lifecycle": "Mutable resource",
      "resources": {
        "prerequisites": [
          "statistical source and coordinate context"
        ],
        "owns": [
          "error bar"
        ],
        "idOptions": [
          "id",
          "target",
          "data",
          "coordinate"
        ]
      },
      "authoringRoles": [
        "H1"
      ],
      "wraps": [
        "createRuleMark",
        "encodeX",
        "encodeY",
        "editSemantic",
        "encodeY2",
        "encodeStroke",
        "encodeStrokeWidth",
        "encodeStrokeDash",
        "encodeOpacity",
        "encodeX2",
        "createIntervalData"
      ],
      "editableVia": [
        "editErrorBar"
      ],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [
        {
          "path": "capSize",
          "unit": "logical-pixel"
        },
        {
          "path": "strokeWidth",
          "unit": "logical-pixel"
        },
        {
          "path": "opacity",
          "unit": "probability"
        }
      ],
      "inference": [
        {
          "input": "target",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "data",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "coordinate",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "omitted optional options",
          "strategy": "documented-default"
        }
      ],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "statistical source and coordinate context"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "id",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "target",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "data",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "x",
          "required": false,
          "type": "ErrorBarIntervalChannel | ErrorBarPositionChannel | undefined"
        },
        {
          "name": "y",
          "required": false,
          "type": "ErrorBarIntervalChannel | ErrorBarPositionChannel | undefined"
        },
        {
          "name": "xOffset",
          "required": false,
          "type": "ErrorBarOffsetChannel | undefined"
        },
        {
          "name": "yOffset",
          "required": false,
          "type": "ErrorBarOffsetChannel | undefined"
        },
        {
          "name": "groupBy",
          "required": false,
          "type": "string | false | undefined"
        },
        {
          "name": "coordinate",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "caps",
          "required": false,
          "type": "boolean | undefined"
        },
        {
          "name": "capSize",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "stroke",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "strokeWidth",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "strokeDash",
          "required": false,
          "type": "DashPattern | DashStyle | undefined"
        },
        {
          "name": "opacity",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "lineCap",
          "required": false,
          "type": "\"butt\" | \"round\" | \"square\" | undefined"
        },
        {
          "name": "lineJoin",
          "required": false,
          "type": "\"bevel\" | \"miter\" | \"round\" | undefined"
        },
        {
          "name": "miterLimit",
          "required": false,
          "type": "number | undefined"
        }
      ],
      "callPatterns": [
        "createErrorBar({ id?, target?, data?, coordinate?, x?, y?, xOffset?, yOffset? })"
      ],
      "snippet": "program.createErrorBar({})",
      "errors": [],
      "route": "/reference/actions/statistics/#createerrorbar"
    },
    {
      "schemaVersion": 3,
      "name": "editErrorBar",
      "layer": "user-facing",
      "domain": "statistics",
      "summary": "Revise one error bar's source, position/interval roles, optional categorical offset, statistics, and owned caps.",
      "signature": "editErrorBar(options: EditErrorBarOptions): ChartProgram;",
      "intents": [
        "edit error bar",
        "edit",
        "change",
        "statistical layer",
        "statistical transform",
        "error bar",
        "uncertainty whisker"
      ],
      "lifecycle": "Mutable resource",
      "resources": {
        "prerequisites": [
          "existing error bar",
          "statistical source and coordinate context"
        ],
        "owns": [],
        "idOptions": [
          "target",
          "data"
        ]
      },
      "authoringRoles": [
        "H1",
        "H3"
      ],
      "wraps": [],
      "editableVia": [
        "editErrorBar"
      ],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [
        {
          "path": "capSize",
          "unit": "logical-pixel"
        },
        {
          "path": "strokeWidth",
          "unit": "logical-pixel"
        },
        {
          "path": "opacity",
          "unit": "probability"
        }
      ],
      "inference": [
        {
          "input": "target",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "data",
          "strategy": "explicit-current-unique-or-error"
        }
      ],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "existing error bar",
          "statistical source and coordinate context"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "target",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "data",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "x",
          "required": false,
          "type": "ErrorBarIntervalChannel | ErrorBarPositionChannel | undefined"
        },
        {
          "name": "y",
          "required": false,
          "type": "ErrorBarIntervalChannel | ErrorBarPositionChannel | undefined"
        },
        {
          "name": "xOffset",
          "required": false,
          "type": "false | ErrorBarOffsetChannel | undefined"
        },
        {
          "name": "yOffset",
          "required": false,
          "type": "false | ErrorBarOffsetChannel | undefined"
        },
        {
          "name": "groupBy",
          "required": false,
          "type": "string | false | undefined"
        },
        {
          "name": "caps",
          "required": false,
          "type": "boolean | undefined"
        },
        {
          "name": "capSize",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "stroke",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "strokeWidth",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "strokeDash",
          "required": false,
          "type": "DashPattern | DashStyle | undefined"
        },
        {
          "name": "opacity",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "statistics",
          "required": false,
          "type": "{ center?: IntervalCenter | undefined; extent?: IntervalExtent | undefined; method?: ConfidenceIntervalMethod | undefined; level?: number | undefined; } | undefined"
        },
        {
          "name": "lineCap",
          "required": false,
          "type": "\"butt\" | \"round\" | \"square\" | undefined"
        },
        {
          "name": "lineJoin",
          "required": false,
          "type": "\"bevel\" | \"miter\" | \"round\" | undefined"
        },
        {
          "name": "miterLimit",
          "required": false,
          "type": "number | undefined"
        }
      ],
      "callPatterns": [
        "editErrorBar({ target?, data?, x?, y?, xOffset?, yOffset?, groupBy?, caps? })"
      ],
      "snippet": "program.editErrorBar({ opacity: 0.6 })",
      "errors": [],
      "route": "/reference/actions/statistics/#editerrorbar"
    },
    {
      "schemaVersion": 3,
      "name": "createErrorBand",
      "layer": "user-facing",
      "domain": "statistics",
      "summary": "Create a vertical or horizontal statistical or explicit interval ribbon.",
      "signature": "createErrorBand(options?: ErrorBandOptions): ChartProgram;",
      "intents": [
        "create error band",
        "create",
        "add",
        "statistical layer",
        "statistical transform",
        "error band",
        "uncertainty ribbon"
      ],
      "lifecycle": "Mutable resource",
      "resources": {
        "prerequisites": [
          "statistical source and coordinate context"
        ],
        "owns": [
          "error band"
        ],
        "idOptions": [
          "id",
          "target",
          "data",
          "coordinate"
        ]
      },
      "authoringRoles": [
        "H1"
      ],
      "wraps": [
        "createAreaMark",
        "encodeX",
        "encodeYRange",
        "editSemantic",
        "encodeGroup",
        "encodeY",
        "encodeXRange"
      ],
      "editableVia": [
        "editErrorBand",
        "editErrorBandBoundary"
      ],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [
        {
          "path": "opacity",
          "unit": "probability"
        }
      ],
      "inference": [
        {
          "input": "target",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "data",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "coordinate",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "omitted optional options",
          "strategy": "documented-default"
        }
      ],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "statistical source and coordinate context"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "id",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "target",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "data",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "x",
          "required": false,
          "type": "ErrorBandIntervalChannel | ErrorBandPositionChannel | undefined"
        },
        {
          "name": "y",
          "required": false,
          "type": "ErrorBandIntervalChannel | ErrorBandPositionChannel | undefined"
        },
        {
          "name": "groupBy",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "coordinate",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "fill",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "opacity",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "curve",
          "required": false,
          "type": "CurveInterpolation | undefined"
        },
        {
          "name": "boundaries",
          "required": false,
          "type": "false | (StrokeStyleDetails & { stroke?: string | undefined; strokeWidth?: number | undefined; strokeDash?: DashPattern | DashStyle | undefined; opacity?: number | undefined; curve?: CurveInterpolation | undefined; }) | undefined"
        },
        {
          "name": "lineCap",
          "required": false,
          "type": "\"butt\" | \"round\" | \"square\" | undefined"
        },
        {
          "name": "lineJoin",
          "required": false,
          "type": "\"bevel\" | \"miter\" | \"round\" | undefined"
        },
        {
          "name": "miterLimit",
          "required": false,
          "type": "number | undefined"
        }
      ],
      "callPatterns": [
        "createErrorBand({ id?, target?, data?, coordinate?, x?, y?, groupBy?, fill? })"
      ],
      "snippet": "program.createErrorBand({})",
      "errors": [],
      "route": "/reference/actions/statistics/#createerrorband"
    },
    {
      "schemaVersion": 3,
      "name": "editErrorBand",
      "layer": "user-facing",
      "domain": "statistics",
      "summary": "Constant band fill conflicts with active color.",
      "signature": "editErrorBand(options: EditErrorBandOptions): ChartProgram;",
      "intents": [
        "edit error band",
        "edit",
        "change",
        "statistical layer",
        "statistical transform",
        "error band",
        "uncertainty ribbon"
      ],
      "lifecycle": "Mutable resource",
      "resources": {
        "prerequisites": [
          "existing error band",
          "statistical source and coordinate context"
        ],
        "owns": [],
        "idOptions": [
          "target",
          "data"
        ]
      },
      "authoringRoles": [
        "H1",
        "H3"
      ],
      "wraps": [],
      "editableVia": [
        "editErrorBand"
      ],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [
        {
          "path": "opacity",
          "unit": "probability"
        }
      ],
      "inference": [
        {
          "input": "target",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "data",
          "strategy": "explicit-current-unique-or-error"
        }
      ],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "existing error band",
          "statistical source and coordinate context"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "target",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "data",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "x",
          "required": false,
          "type": "ErrorBandIntervalChannel | ErrorBandPositionChannel | undefined"
        },
        {
          "name": "y",
          "required": false,
          "type": "ErrorBandIntervalChannel | ErrorBandPositionChannel | undefined"
        },
        {
          "name": "groupBy",
          "required": false,
          "type": "string | false | undefined"
        },
        {
          "name": "fill",
          "required": false,
          "type": "string | false | undefined"
        },
        {
          "name": "opacity",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "curve",
          "required": false,
          "type": "CurveInterpolation | undefined"
        },
        {
          "name": "statistics",
          "required": false,
          "type": "{ center?: IntervalCenter | undefined; extent?: IntervalExtent | undefined; method?: ConfidenceIntervalMethod | undefined; level?: number | undefined; } | undefined"
        },
        {
          "name": "boundaries",
          "required": false,
          "type": "false | (StrokeStyleDetails & { stroke?: string | undefined; strokeWidth?: number | undefined; strokeDash?: DashPattern | DashStyle | undefined; opacity?: number | undefined; curve?: CurveInterpolation | undefined; }) | undefined"
        },
        {
          "name": "lineCap",
          "required": false,
          "type": "\"butt\" | \"round\" | \"square\" | undefined"
        },
        {
          "name": "lineJoin",
          "required": false,
          "type": "\"bevel\" | \"miter\" | \"round\" | undefined"
        },
        {
          "name": "miterLimit",
          "required": false,
          "type": "number | undefined"
        }
      ],
      "callPatterns": [
        "editErrorBand({ target?, data?, x?, y?, groupBy?, fill?, opacity?, curve? })"
      ],
      "snippet": "program.editErrorBand({ opacity: 0.35 })",
      "errors": [],
      "route": "/reference/actions/statistics/#editerrorband"
    },
    {
      "schemaVersion": 3,
      "name": "editErrorBandBoundary",
      "layer": "user-facing",
      "domain": "statistics",
      "summary": "Constant band fill conflicts with active color.",
      "signature": "editErrorBandBoundary(options: EditErrorBandBoundaryOptions): ChartProgram;",
      "intents": [
        "edit error band boundary",
        "edit",
        "change",
        "statistical layer",
        "statistical transform",
        "error band boundary",
        "ribbon outline"
      ],
      "lifecycle": "Mutable resource",
      "resources": {
        "prerequisites": [
          "existing error band boundary",
          "statistical source and coordinate context"
        ],
        "owns": [],
        "idOptions": [
          "target"
        ]
      },
      "authoringRoles": [
        "H1",
        "H3"
      ],
      "wraps": [],
      "editableVia": [
        "editErrorBandBoundary"
      ],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [
        {
          "path": "strokeWidth",
          "unit": "logical-pixel"
        },
        {
          "path": "opacity",
          "unit": "probability"
        }
      ],
      "inference": [
        {
          "input": "target",
          "strategy": "explicit-current-unique-or-error"
        }
      ],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "existing error band boundary",
          "statistical source and coordinate context"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "target",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "boundary",
          "required": false,
          "type": "\"both\" | \"lower\" | \"upper\" | undefined"
        },
        {
          "name": "stroke",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "strokeWidth",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "strokeDash",
          "required": false,
          "type": "DashPattern | DashStyle | undefined"
        },
        {
          "name": "opacity",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "curve",
          "required": false,
          "type": "CurveInterpolation | undefined"
        },
        {
          "name": "lineCap",
          "required": false,
          "type": "\"butt\" | \"round\" | \"square\" | undefined"
        },
        {
          "name": "lineJoin",
          "required": false,
          "type": "\"bevel\" | \"miter\" | \"round\" | undefined"
        },
        {
          "name": "miterLimit",
          "required": false,
          "type": "number | undefined"
        }
      ],
      "callPatterns": [
        "editErrorBandBoundary({ target?, boundary?, stroke?, strokeWidth?, strokeDash?, opacity?, curve?, lineCap? })"
      ],
      "snippet": "program.editErrorBandBoundary({ boundary: \"both\" })",
      "errors": [],
      "route": "/reference/actions/statistics/#editerrorbandboundary"
    },
    {
      "schemaVersion": 3,
      "name": "createBoxPlot",
      "layer": "user-facing",
      "domain": "statistics",
      "summary": "Creates a Box plot owner that defers geometry and guides until compatible x/y roles are available.",
      "signature": "createBoxPlot(options?: BoxPlotOptions): ChartProgram;",
      "intents": [
        "create box plot",
        "create",
        "add",
        "statistical layer",
        "statistical transform",
        "box plot",
        "quartile distribution"
      ],
      "lifecycle": "Mutable resource",
      "resources": {
        "prerequisites": [
          "canvas and source dataset",
          "compatible x/y roles before materialization"
        ],
        "owns": [
          "box plot"
        ],
        "idOptions": [
          "id",
          "target",
          "data",
          "coordinate"
        ]
      },
      "authoringRoles": [
        "H0",
        "H1"
      ],
      "wraps": [
        "createBarMark",
        "encodeX",
        "encodeY"
      ],
      "editableVia": [
        "editBoxPlot"
      ],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [
        {
          "path": "width",
          "unit": "band-fraction"
        }
      ],
      "inference": [
        {
          "input": "target",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "data",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "coordinate",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "omitted optional options",
          "strategy": "documented-default"
        }
      ],
      "completionRequirements": {
        "state": "deferred",
        "requires": [
          "canvas and source dataset",
          "compatible x/y roles before materialization"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "id",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "target",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "data",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "x",
          "required": false,
          "type": "BoxPlotPositionChannel | undefined"
        },
        {
          "name": "y",
          "required": false,
          "type": "BoxPlotPositionChannel | undefined"
        },
        {
          "name": "coordinate",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "whisker",
          "required": false,
          "type": "BoxPlotWhisker | undefined"
        },
        {
          "name": "width",
          "required": false,
          "type": "{ band?: number | undefined; } | undefined"
        },
        {
          "name": "outliers",
          "required": false,
          "type": "boolean | undefined"
        },
        {
          "name": "box",
          "required": false,
          "type": "(StrokeStyleDetails & { cornerRadius?: number | undefined; } & { fill?: string | undefined; opacity?: number | undefined; stroke?: string | undefined; strokeWidth?: number | undefined; }) | undefined"
        },
        {
          "name": "median",
          "required": false,
          "type": "(StrokeStyleDetails & { stroke?: string | undefined; strokeWidth?: number | undefined; }) | undefined"
        },
        {
          "name": "outlier",
          "required": false,
          "type": "(StrokeStyleDetails & { shape?: PointShape | undefined; radius?: number | undefined; opacity?: number | undefined; }) | undefined"
        },
        {
          "name": "guides",
          "required": false,
          "type": "false | BoxPlotGuideOptions | undefined"
        }
      ],
      "callPatterns": [
        "createBoxPlot({ x, y, guides? })",
        "createBoxPlot({ id?, data? })"
      ],
      "snippet": "program.createBoxPlot({})",
      "errors": [],
      "route": "/reference/actions/statistics/#createboxplot"
    },
    {
      "schemaVersion": 3,
      "name": "editBoxPlot",
      "layer": "user-facing",
      "domain": "statistics",
      "summary": "Revise box statistics, optional outlier topology, width, and component appearance through the stable box owner without addressing generated child IDs.",
      "signature": "editBoxPlot(options: EditBoxPlotOptions): ChartProgram;",
      "intents": [
        "edit box plot",
        "edit",
        "change",
        "statistical layer",
        "statistical transform",
        "box plot",
        "quartile distribution"
      ],
      "lifecycle": "Mutable resource",
      "resources": {
        "prerequisites": [
          "existing box plot",
          "statistical source and coordinate context"
        ],
        "owns": [],
        "idOptions": [
          "target",
          "data"
        ]
      },
      "authoringRoles": [
        "H1",
        "H3"
      ],
      "wraps": [
        "editSemantic",
        "encodeStroke",
        "encodeStrokeWidth"
      ],
      "editableVia": [
        "editBoxPlot"
      ],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [
        {
          "path": "width",
          "unit": "band-fraction"
        }
      ],
      "inference": [
        {
          "input": "target",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "data",
          "strategy": "explicit-current-unique-or-error"
        }
      ],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "existing box plot",
          "statistical source and coordinate context"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "target",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "data",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "x",
          "required": false,
          "type": "BoxPlotPositionChannel | undefined"
        },
        {
          "name": "y",
          "required": false,
          "type": "BoxPlotPositionChannel | undefined"
        },
        {
          "name": "whisker",
          "required": false,
          "type": "BoxPlotWhisker | undefined"
        },
        {
          "name": "width",
          "required": false,
          "type": "{ band?: number | undefined; } | undefined"
        },
        {
          "name": "outliers",
          "required": false,
          "type": "boolean | undefined"
        },
        {
          "name": "box",
          "required": false,
          "type": "(StrokeStyleDetails & { cornerRadius?: number | undefined; } & { fill?: string | undefined; opacity?: number | undefined; stroke?: string | undefined; strokeWidth?: number | undefined; }) | undefined"
        },
        {
          "name": "median",
          "required": false,
          "type": "(StrokeStyleDetails & { stroke?: string | undefined; strokeWidth?: number | undefined; }) | undefined"
        },
        {
          "name": "outlier",
          "required": false,
          "type": "(StrokeStyleDetails & { shape?: PointShape | undefined; radius?: number | undefined; opacity?: number | undefined; }) | undefined"
        }
      ],
      "callPatterns": [
        "editBoxPlot({ target?, data?, x?, y?, whisker?, width?, outliers?, box? })"
      ],
      "snippet": "program.editBoxPlot({ data: \"data-1\" })",
      "errors": [],
      "route": "/reference/actions/statistics/#editboxplot"
    },
    {
      "schemaVersion": 3,
      "name": "createGradientPlot",
      "layer": "user-facing",
      "domain": "statistics",
      "summary": "Creates a Gradient plot owner that defers geometry and guides until compatible x/y roles are available.",
      "signature": "createGradientPlot(options?: GradientPlotOptions): ChartProgram;",
      "intents": [
        "create gradient plot",
        "create",
        "add",
        "statistical layer",
        "statistical transform",
        "gradient plot",
        "density gradient"
      ],
      "lifecycle": "Mutable resource",
      "resources": {
        "prerequisites": [
          "canvas and source dataset",
          "compatible x/y roles before materialization"
        ],
        "owns": [
          "gradient plot"
        ],
        "idOptions": [
          "id",
          "target",
          "data",
          "coordinate"
        ]
      },
      "authoringRoles": [
        "H0",
        "H1"
      ],
      "wraps": [
        "createRectMark",
        "encodeX",
        "encodeY"
      ],
      "editableVia": [
        "editGradientPlot"
      ],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [
        {
          "path": "width",
          "unit": "band-fraction"
        }
      ],
      "inference": [
        {
          "input": "target",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "data",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "coordinate",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "omitted optional options",
          "strategy": "documented-default"
        }
      ],
      "completionRequirements": {
        "state": "deferred",
        "requires": [
          "canvas and source dataset",
          "compatible x/y roles before materialization"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "id",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "target",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "data",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "x",
          "required": false,
          "type": "BoxPlotPositionChannel | undefined"
        },
        {
          "name": "y",
          "required": false,
          "type": "BoxPlotPositionChannel | undefined"
        },
        {
          "name": "coordinate",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "density",
          "required": false,
          "type": "GradientPlotDensityOptions | undefined"
        },
        {
          "name": "width",
          "required": false,
          "type": "{ band?: number | undefined; } | undefined"
        },
        {
          "name": "gradient",
          "required": false,
          "type": "GradientPlotAppearanceOptions | undefined"
        },
        {
          "name": "center",
          "required": false,
          "type": "false | GradientPlotCenterOptions | undefined"
        },
        {
          "name": "guides",
          "required": false,
          "type": "false | GradientPlotGuideOptions | undefined"
        }
      ],
      "callPatterns": [
        "createGradientPlot({ x, y, guides? })",
        "createGradientPlot({ id?, data? })"
      ],
      "snippet": "program.createGradientPlot({})",
      "errors": [],
      "route": "/reference/actions/statistics/#creategradientplot"
    },
    {
      "schemaVersion": 3,
      "name": "editGradientPlot",
      "layer": "user-facing",
      "domain": "statistics",
      "summary": "Revise one stable gradient-plot owner.",
      "signature": "editGradientPlot(options: EditGradientPlotOptions): ChartProgram;",
      "intents": [
        "edit gradient plot",
        "edit",
        "change",
        "statistical layer",
        "statistical transform",
        "gradient plot",
        "density gradient"
      ],
      "lifecycle": "Mutable resource",
      "resources": {
        "prerequisites": [
          "existing gradient plot",
          "statistical source and coordinate context"
        ],
        "owns": [],
        "idOptions": [
          "target",
          "data"
        ]
      },
      "authoringRoles": [
        "H1",
        "H3"
      ],
      "wraps": [
        "editSemantic",
        "editXAxisTicks",
        "editXAxisLabels",
        "editXAxisTitle",
        "editYAxisTicks",
        "editYAxisLabels",
        "editYAxisTitle",
        "encodeStroke",
        "encodeStrokeWidth",
        "editGraphics"
      ],
      "editableVia": [
        "editGradientPlot"
      ],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [
        {
          "path": "width",
          "unit": "band-fraction"
        }
      ],
      "inference": [
        {
          "input": "target",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "data",
          "strategy": "explicit-current-unique-or-error"
        }
      ],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "existing gradient plot",
          "statistical source and coordinate context"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "target",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "data",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "x",
          "required": false,
          "type": "BoxPlotPositionChannel | undefined"
        },
        {
          "name": "y",
          "required": false,
          "type": "BoxPlotPositionChannel | undefined"
        },
        {
          "name": "density",
          "required": false,
          "type": "GradientPlotDensityOptions | undefined"
        },
        {
          "name": "width",
          "required": false,
          "type": "{ band?: number | undefined; } | undefined"
        },
        {
          "name": "gradient",
          "required": false,
          "type": "GradientPlotAppearanceOptions | undefined"
        },
        {
          "name": "center",
          "required": false,
          "type": "false | GradientPlotCenterOptions | undefined"
        }
      ],
      "callPatterns": [
        "editGradientPlot({ target?, data?, x?, y?, density?, width?, gradient?, center? })"
      ],
      "snippet": "program.editGradientPlot({ data: \"data-1\" })",
      "errors": [],
      "route": "/reference/actions/statistics/#editgradientplot"
    },
    {
      "schemaVersion": 3,
      "name": "createViolinPlot",
      "layer": "user-facing",
      "domain": "statistics",
      "summary": "Create a vertical or horizontal categorical density plot from exactly one categorical and one quantitative x/y role.",
      "signature": "createViolinPlot(options: ViolinPlotOptions): ChartProgram;",
      "intents": [
        "create violin plot",
        "create",
        "add",
        "statistical layer",
        "statistical transform",
        "violin plot",
        "mirrored density distribution"
      ],
      "lifecycle": "Mutable resource",
      "resources": {
        "prerequisites": [
          "statistical source and coordinate context"
        ],
        "owns": [
          "violin plot"
        ],
        "idOptions": [
          "id",
          "data",
          "coordinate"
        ]
      },
      "authoringRoles": [
        "H0",
        "H1"
      ],
      "wraps": [
        "createAreaMark",
        "encodeDensity",
        "encodeColor",
        "createGuides"
      ],
      "editableVia": [
        "editViolinPlot"
      ],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [],
      "inference": [
        {
          "input": "data",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "coordinate",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "omitted optional options",
          "strategy": "documented-default"
        }
      ],
      "completionRequirements": {
        "state": "complete",
        "requires": [
          "statistical source and coordinate context"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "id",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "data",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "coordinate",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "x",
          "required": true,
          "type": "ViolinPlotPositionChannel"
        },
        {
          "name": "y",
          "required": true,
          "type": "ViolinPlotPositionChannel"
        },
        {
          "name": "split",
          "required": false,
          "type": "ViolinPlotSplitOptions | undefined"
        },
        {
          "name": "color",
          "required": false,
          "type": "ViolinPlotColorOptions | undefined"
        },
        {
          "name": "density",
          "required": false,
          "type": "ViolinPlotDensityOptions | undefined"
        },
        {
          "name": "area",
          "required": false,
          "type": "ViolinPlotAreaOptions | undefined"
        },
        {
          "name": "guides",
          "required": false,
          "type": "false | CartesianCategoricalGuideOptions | undefined"
        }
      ],
      "callPatterns": [
        "createViolinPlot({ x, y, density?, area? })",
        "createViolinPlot({ x, y, split, color?, guides? })"
      ],
      "snippet": "program.createViolinPlot({ x: \"x\", y: \"y\" })",
      "errors": [],
      "route": "/reference/actions/statistics/#createviolinplot"
    },
    {
      "schemaVersion": 3,
      "name": "editViolinPlot",
      "layer": "user-facing",
      "domain": "statistics",
      "summary": "Revise source, category, quantitative value, split, orientation, and density parameters through one stable violin owner.",
      "signature": "editViolinPlot(options: EditViolinPlotOptions): ChartProgram;",
      "intents": [
        "edit violin plot",
        "edit",
        "change",
        "statistical layer",
        "statistical transform",
        "violin plot",
        "mirrored density distribution"
      ],
      "lifecycle": "Mutable resource",
      "resources": {
        "prerequisites": [
          "existing violin plot",
          "statistical source and coordinate context"
        ],
        "owns": [],
        "idOptions": [
          "target",
          "data"
        ]
      },
      "authoringRoles": [
        "H1",
        "H3"
      ],
      "wraps": [
        "editDensity"
      ],
      "editableVia": [
        "editViolinPlot"
      ],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [],
      "inference": [
        {
          "input": "target",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "data",
          "strategy": "explicit-current-unique-or-error"
        }
      ],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "existing violin plot",
          "statistical source and coordinate context"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "target",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "data",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "x",
          "required": false,
          "type": "ViolinPlotPositionChannel | undefined"
        },
        {
          "name": "y",
          "required": false,
          "type": "ViolinPlotPositionChannel | undefined"
        },
        {
          "name": "split",
          "required": false,
          "type": "false | ViolinPlotSplitOptions | undefined"
        },
        {
          "name": "density",
          "required": false,
          "type": "(Omit<ViolinPlotDensityOptions, \"weight\"> & { weight?: false | StatisticalWeight | undefined; }) | undefined"
        }
      ],
      "callPatterns": [
        "editViolinPlot({ target?, data?, x?, y?, split?, density? })"
      ],
      "snippet": "program.editViolinPlot({ x: \"x\" })",
      "errors": [],
      "route": "/reference/actions/statistics/#editviolinplot"
    },
    {
      "schemaVersion": 3,
      "name": "createParallelAxes",
      "layer": "user-facing",
      "domain": "axes",
      "summary": "Full-only field-selected Parallel guides.",
      "signature": "createParallelAxes(options?: ParallelAxesOptions): ChartProgram;",
      "intents": [
        "create parallel axes",
        "create",
        "add",
        "axis guide",
        "scale annotation",
        "parallel axes",
        "dimension axes"
      ],
      "lifecycle": "Aggregate create-only",
      "resources": {
        "prerequisites": [
          "compatible scale or encoding context"
        ],
        "owns": [
          "parallel axes"
        ],
        "idOptions": [
          "target",
          "coordinate"
        ]
      },
      "authoringRoles": [
        "H3"
      ],
      "wraps": [
        "editSemantic"
      ],
      "editableVia": [
        "editParallelAxis",
        "removeParallelAxes"
      ],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [],
      "inference": [
        {
          "input": "target",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "coordinate",
          "strategy": "explicit-current-unique-or-error"
        }
      ],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "compatible scale or encoding context"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "target",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "coordinate",
          "required": false,
          "type": "string | undefined"
        }
      ],
      "callPatterns": [
        "createParallelAxes({ target?, coordinate? })"
      ],
      "snippet": "program.createParallelAxes({})",
      "errors": [],
      "route": "/reference/actions/guides/#createparallelaxes"
    },
    {
      "schemaVersion": 3,
      "name": "createParallelAxis",
      "layer": "user-facing",
      "domain": "axes",
      "summary": "Full-only field-selected Parallel guides.",
      "signature": "createParallelAxis(options: CreateParallelAxisOptions): ChartProgram;",
      "intents": [
        "create parallel axis",
        "create",
        "add",
        "axis guide",
        "scale annotation",
        "parallel dimension axis",
        "field axis"
      ],
      "lifecycle": "Mutable resource",
      "resources": {
        "prerequisites": [
          "compatible scale or encoding context"
        ],
        "owns": [
          "parallel dimension axis"
        ],
        "idOptions": [
          "target"
        ]
      },
      "authoringRoles": [
        "H3"
      ],
      "wraps": [],
      "editableVia": [
        "editParallelAxis",
        "removeParallelAxis"
      ],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [],
      "inference": [
        {
          "input": "target",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "omitted optional options",
          "strategy": "documented-default"
        }
      ],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "compatible scale or encoding context"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "field",
          "required": true,
          "type": "string"
        },
        {
          "name": "target",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "line",
          "required": false,
          "type": "false | AxisLineStyleOptions | undefined"
        },
        {
          "name": "title",
          "required": false,
          "type": "false | ParallelAxisTitleOptions | undefined"
        },
        {
          "name": "ticksAndLabels",
          "required": false,
          "type": "false | (ParallelAxisTickSelection & { ticks?: AxisTickStyleOptions | undefined; labels?: AxisLabelStyleOptions | undefined; }) | undefined"
        },
        {
          "name": "ticks",
          "required": false,
          "type": "false | ParallelAxisTicksOptions | undefined"
        },
        {
          "name": "labels",
          "required": false,
          "type": "false | ParallelAxisLabelsOptions | undefined"
        }
      ],
      "callPatterns": [
        "createParallelAxis({ field, target?, line?, title?, ticksAndLabels?, ticks?, labels? })"
      ],
      "snippet": "program.createParallelAxis({ field: \"value\" })",
      "errors": [],
      "route": "/reference/actions/guides/#createparallelaxis"
    },
    {
      "schemaVersion": 3,
      "name": "editParallelAxis",
      "layer": "user-facing",
      "domain": "axes",
      "summary": "Full-only field-selected Parallel guides.",
      "signature": "editParallelAxis(options: EditParallelAxisOptions): ChartProgram;",
      "intents": [
        "edit parallel axis",
        "edit",
        "change",
        "axis guide",
        "scale annotation",
        "parallel dimension axis",
        "field axis"
      ],
      "lifecycle": "Mutable resource",
      "resources": {
        "prerequisites": [
          "existing parallel dimension axis",
          "compatible scale or encoding context"
        ],
        "owns": [],
        "idOptions": [
          "target"
        ]
      },
      "authoringRoles": [
        "H3"
      ],
      "wraps": [
        "editSemantic"
      ],
      "editableVia": [
        "editParallelAxis"
      ],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [],
      "inference": [
        {
          "input": "target",
          "strategy": "explicit-current-unique-or-error"
        }
      ],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "existing parallel dimension axis",
          "compatible scale or encoding context"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "field",
          "required": true,
          "type": "string"
        },
        {
          "name": "target",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "line",
          "required": false,
          "type": "false | AxisLineStyleOptions | undefined"
        },
        {
          "name": "title",
          "required": false,
          "type": "false | ParallelAxisTitleOptions | undefined"
        },
        {
          "name": "ticksAndLabels",
          "required": false,
          "type": "false | (ParallelAxisTickSelection & { ticks?: AxisTickStyleOptions | undefined; labels?: AxisLabelStyleOptions | undefined; }) | undefined"
        },
        {
          "name": "ticks",
          "required": false,
          "type": "false | ParallelAxisTicksOptions | undefined"
        },
        {
          "name": "labels",
          "required": false,
          "type": "false | ParallelAxisLabelsOptions | undefined"
        }
      ],
      "callPatterns": [
        "editParallelAxis({ field, target?, line?, title?, ticksAndLabels?, ticks?, labels? })"
      ],
      "snippet": "program.editParallelAxis({ field: \"value\" })",
      "errors": [],
      "route": "/reference/actions/guides/#editparallelaxis"
    },
    {
      "schemaVersion": 3,
      "name": "removeParallelAxis",
      "layer": "user-facing",
      "domain": "axes",
      "summary": "Full-only field-selected Parallel guides.",
      "signature": "removeParallelAxis(options: RemoveParallelAxisOptions): ChartProgram;",
      "intents": [
        "remove parallel axis",
        "remove",
        "delete",
        "axis guide",
        "scale annotation",
        "parallel dimension axis",
        "field axis"
      ],
      "lifecycle": "Mutable resource",
      "resources": {
        "prerequisites": [
          "existing parallel dimension axis",
          "compatible scale or encoding context"
        ],
        "owns": [],
        "idOptions": [
          "target"
        ]
      },
      "authoringRoles": [
        "H3"
      ],
      "wraps": [
        "editParallelAxis"
      ],
      "editableVia": [
        "createParallelAxis"
      ],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [],
      "inference": [
        {
          "input": "target",
          "strategy": "explicit-current-unique-or-error"
        }
      ],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "existing parallel dimension axis",
          "compatible scale or encoding context"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "field",
          "required": true,
          "type": "string"
        },
        {
          "name": "target",
          "required": false,
          "type": "string | undefined"
        }
      ],
      "callPatterns": [
        "removeParallelAxis({ field, target? })"
      ],
      "snippet": "program.removeParallelAxis({ field: \"value\" })",
      "errors": [],
      "route": "/reference/actions/guides/#removeparallelaxis"
    },
    {
      "schemaVersion": 3,
      "name": "removeParallelAxes",
      "layer": "user-facing",
      "domain": "axes",
      "summary": "Full-only field-selected Parallel guides.",
      "signature": "removeParallelAxes(options?: ParallelAxesOptions): ChartProgram;",
      "intents": [
        "remove parallel axes",
        "remove",
        "delete",
        "axis guide",
        "scale annotation",
        "parallel axes",
        "dimension axes"
      ],
      "lifecycle": "Mutable resource",
      "resources": {
        "prerequisites": [
          "existing parallel axes",
          "compatible scale or encoding context"
        ],
        "owns": [],
        "idOptions": [
          "target",
          "coordinate"
        ]
      },
      "authoringRoles": [
        "H3"
      ],
      "wraps": [
        "editSemantic",
        "editGraphics"
      ],
      "editableVia": [
        "createParallelAxes"
      ],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [],
      "inference": [
        {
          "input": "target",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "coordinate",
          "strategy": "explicit-current-unique-or-error"
        }
      ],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "existing parallel axes",
          "compatible scale or encoding context"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "target",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "coordinate",
          "required": false,
          "type": "string | undefined"
        }
      ],
      "callPatterns": [
        "removeParallelAxes({ target?, coordinate? })"
      ],
      "snippet": "program.removeParallelAxes({})",
      "errors": [],
      "route": "/reference/actions/guides/#removeparallelaxes"
    },
    {
      "schemaVersion": 3,
      "name": "createAxes",
      "layer": "user-facing",
      "domain": "axes",
      "summary": "Create Cartesian or Polar axes directly, including inferred titles and ticks.",
      "signature": "createAxes(options?: CreateAxesOptions): ChartProgram;",
      "intents": [
        "create axes",
        "create",
        "add",
        "axis guide",
        "scale annotation",
        "x and y axes",
        "Cartesian guides"
      ],
      "lifecycle": "Aggregate create-only",
      "resources": {
        "prerequisites": [
          "compatible scale or encoding context"
        ],
        "owns": [
          "x and y axes"
        ],
        "idOptions": [
          "coordinate"
        ]
      },
      "authoringRoles": [
        "H3"
      ],
      "wraps": [
        "createThetaAxis",
        "createRadialAxis",
        "createXAxis",
        "createYAxis",
        "createParallelAxes"
      ],
      "editableVia": [],
      "supports": {
        "entryPoints": [
          "default",
          "basic"
        ]
      },
      "units": [],
      "inference": [
        {
          "input": "coordinate",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "coordinate",
          "strategy": "documented-auto"
        },
        {
          "input": "omitted optional options",
          "strategy": "documented-default"
        }
      ],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "compatible scale or encoding context"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "coordinate",
          "required": false,
          "type": "{ id?: string | undefined; type?: \"auto\" | \"cartesian\" | \"parallel\" | \"polar\" | undefined; } | undefined"
        },
        {
          "name": "x",
          "required": false,
          "type": "false | CompleteAxisOptions<XAxisPosition> | undefined"
        },
        {
          "name": "y",
          "required": false,
          "type": "false | CompleteAxisOptions<YAxisPosition> | undefined"
        },
        {
          "name": "theta",
          "required": false,
          "type": "false | CompletePolarAxisOptions | undefined"
        },
        {
          "name": "radius",
          "required": false,
          "type": "false | CompleteRadialAxisOptions | undefined"
        }
      ],
      "callPatterns": [
        "createAxes({ coordinate?, x?, y?, theta?, radius? })"
      ],
      "snippet": "program.createAxes({})",
      "errors": [],
      "route": "/reference/actions/guides/#createaxes"
    },
    {
      "schemaVersion": 3,
      "name": "createXAxis",
      "layer": "user-facing",
      "domain": "axes",
      "summary": "Creates x axis for horizontal scale guide.",
      "signature": "createXAxis(options?: CompleteAxisOptions<XAxisPosition>): ChartProgram;",
      "intents": [
        "create x axis",
        "create",
        "add",
        "axis guide",
        "scale annotation",
        "x axis",
        "horizontal scale guide"
      ],
      "lifecycle": "Aggregate create-only",
      "resources": {
        "prerequisites": [
          "compatible scale or encoding context"
        ],
        "owns": [
          "x axis"
        ],
        "idOptions": [
          "scale",
          "coordinate"
        ]
      },
      "authoringRoles": [
        "H3"
      ],
      "wraps": [
        "editSemantic",
        "createXAxisLine",
        "createXAxisTicksAndLabels",
        "createXAxisTitle"
      ],
      "editableVia": [
        "editXAxis"
      ],
      "supports": {
        "entryPoints": [
          "default",
          "basic"
        ]
      },
      "units": [],
      "inference": [
        {
          "input": "scale",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "coordinate",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "omitted optional options",
          "strategy": "documented-default"
        }
      ],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "compatible scale or encoding context"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "scale",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "coordinate",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "position",
          "required": false,
          "type": "XAxisPosition | undefined"
        },
        {
          "name": "line",
          "required": false,
          "type": "false | AxisLineStyleOptions | undefined"
        },
        {
          "name": "ticksAndLabels",
          "required": false,
          "type": "false | Omit<AxisTicksAndLabelsOptions<XAxisPosition>, \"position\" | \"scale\"> | undefined"
        },
        {
          "name": "title",
          "required": false,
          "type": "false | Omit<AxisTitleOptions<XAxisPosition>, \"position\" | \"scale\"> | undefined"
        }
      ],
      "callPatterns": [
        "createXAxis({ scale?, coordinate?, position?, line?, ticksAndLabels?, title? })"
      ],
      "snippet": "program.createXAxis({})",
      "errors": [],
      "route": "/reference/actions/guides/#createxaxis"
    },
    {
      "schemaVersion": 3,
      "name": "createYAxis",
      "layer": "user-facing",
      "domain": "axes",
      "summary": "Creates y axis for vertical scale guide.",
      "signature": "createYAxis(options?: CompleteAxisOptions<YAxisPosition>): ChartProgram;",
      "intents": [
        "create y axis",
        "create",
        "add",
        "axis guide",
        "scale annotation",
        "y axis",
        "vertical scale guide"
      ],
      "lifecycle": "Aggregate create-only",
      "resources": {
        "prerequisites": [
          "compatible scale or encoding context"
        ],
        "owns": [
          "y axis"
        ],
        "idOptions": [
          "scale",
          "coordinate"
        ]
      },
      "authoringRoles": [
        "H3"
      ],
      "wraps": [
        "editSemantic",
        "createYAxisLine",
        "createYAxisTicksAndLabels",
        "createYAxisTitle"
      ],
      "editableVia": [
        "editYAxis"
      ],
      "supports": {
        "entryPoints": [
          "default",
          "basic"
        ]
      },
      "units": [],
      "inference": [
        {
          "input": "scale",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "coordinate",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "omitted optional options",
          "strategy": "documented-default"
        }
      ],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "compatible scale or encoding context"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "scale",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "coordinate",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "position",
          "required": false,
          "type": "YAxisPosition | undefined"
        },
        {
          "name": "line",
          "required": false,
          "type": "false | AxisLineStyleOptions | undefined"
        },
        {
          "name": "ticksAndLabels",
          "required": false,
          "type": "false | Omit<AxisTicksAndLabelsOptions<YAxisPosition>, \"position\" | \"scale\"> | undefined"
        },
        {
          "name": "title",
          "required": false,
          "type": "false | Omit<AxisTitleOptions<YAxisPosition>, \"position\" | \"scale\"> | undefined"
        }
      ],
      "callPatterns": [
        "createYAxis({ scale?, coordinate?, position?, line?, ticksAndLabels?, title? })"
      ],
      "snippet": "program.createYAxis({})",
      "errors": [],
      "route": "/reference/actions/guides/#createyaxis"
    },
    {
      "schemaVersion": 3,
      "name": "createXAxisLine",
      "layer": "user-facing",
      "domain": "axes",
      "summary": "Creates x-axis line for horizontal baseline.",
      "signature": "createXAxisLine(options?: AxisLineStyleOptions & { scale?: string; position?: XAxisPosition }): ChartProgram;",
      "intents": [
        "create x axis line",
        "create",
        "add",
        "axis guide",
        "scale annotation",
        "x-axis line",
        "horizontal baseline"
      ],
      "lifecycle": "Mutable resource",
      "resources": {
        "prerequisites": [
          "compatible scale or encoding context"
        ],
        "owns": [
          "x-axis line"
        ],
        "idOptions": [
          "scale"
        ]
      },
      "authoringRoles": [
        "H3"
      ],
      "wraps": [
        "editSemantic",
        "createGraphics",
        "editXAxisLine"
      ],
      "editableVia": [
        "editXAxisLine"
      ],
      "supports": {
        "entryPoints": [
          "default",
          "basic"
        ]
      },
      "units": [
        {
          "path": "lineWidth",
          "unit": "logical-pixel"
        }
      ],
      "inference": [
        {
          "input": "scale",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "omitted optional options",
          "strategy": "documented-default"
        }
      ],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "compatible scale or encoding context"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "color",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "lineWidth",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "scale",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "position",
          "required": false,
          "type": "XAxisPosition | undefined"
        }
      ],
      "callPatterns": [
        "createXAxisLine({ scale?, color?, lineWidth?, position? })"
      ],
      "snippet": "program.createXAxisLine({})",
      "errors": [],
      "route": "/reference/actions/guides/#createxaxisline"
    },
    {
      "schemaVersion": 3,
      "name": "createYAxisLine",
      "layer": "user-facing",
      "domain": "axes",
      "summary": "Creates y-axis line for vertical baseline.",
      "signature": "createYAxisLine(options?: AxisLineStyleOptions & { scale?: string; position?: YAxisPosition }): ChartProgram;",
      "intents": [
        "create y axis line",
        "create",
        "add",
        "axis guide",
        "scale annotation",
        "y-axis line",
        "vertical baseline"
      ],
      "lifecycle": "Mutable resource",
      "resources": {
        "prerequisites": [
          "compatible scale or encoding context"
        ],
        "owns": [
          "y-axis line"
        ],
        "idOptions": [
          "scale"
        ]
      },
      "authoringRoles": [
        "H3"
      ],
      "wraps": [
        "editSemantic",
        "createGraphics",
        "editYAxisLine"
      ],
      "editableVia": [
        "editYAxisLine"
      ],
      "supports": {
        "entryPoints": [
          "default",
          "basic"
        ]
      },
      "units": [
        {
          "path": "lineWidth",
          "unit": "logical-pixel"
        }
      ],
      "inference": [
        {
          "input": "scale",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "omitted optional options",
          "strategy": "documented-default"
        }
      ],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "compatible scale or encoding context"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "color",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "lineWidth",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "scale",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "position",
          "required": false,
          "type": "YAxisPosition | undefined"
        }
      ],
      "callPatterns": [
        "createYAxisLine({ scale?, color?, lineWidth?, position? })"
      ],
      "snippet": "program.createYAxisLine({})",
      "errors": [],
      "route": "/reference/actions/guides/#createyaxisline"
    },
    {
      "schemaVersion": 3,
      "name": "editXAxisLine",
      "layer": "user-facing",
      "domain": "axes",
      "summary": "Edits x-axis line, including settings for horizontal baseline.",
      "signature": "editXAxisLine(options?: AxisLineStyleOptions & { position?: XAxisPosition }): ChartProgram;",
      "intents": [
        "edit x axis line",
        "edit",
        "change",
        "axis guide",
        "scale annotation",
        "x-axis line",
        "horizontal baseline"
      ],
      "lifecycle": "Mutable resource",
      "resources": {
        "prerequisites": [
          "existing x-axis line",
          "compatible scale or encoding context"
        ],
        "owns": [],
        "idOptions": []
      },
      "authoringRoles": [
        "H3"
      ],
      "wraps": [
        "editGraphics"
      ],
      "editableVia": [
        "editXAxisLine"
      ],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [
        {
          "path": "lineWidth",
          "unit": "logical-pixel"
        }
      ],
      "inference": [],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "existing x-axis line",
          "compatible scale or encoding context"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "color",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "lineWidth",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "position",
          "required": false,
          "type": "XAxisPosition | undefined"
        }
      ],
      "callPatterns": [
        "editXAxisLine({ color?, lineWidth?, position? })"
      ],
      "snippet": "program.editXAxisLine({ color: \"#f28e2b\" })",
      "errors": [],
      "route": "/reference/actions/guides/#editxaxisline"
    },
    {
      "schemaVersion": 3,
      "name": "editYAxisLine",
      "layer": "user-facing",
      "domain": "axes",
      "summary": "Edits y-axis line, including settings for vertical baseline.",
      "signature": "editYAxisLine(options?: AxisLineStyleOptions & { position?: YAxisPosition }): ChartProgram;",
      "intents": [
        "edit y axis line",
        "edit",
        "change",
        "axis guide",
        "scale annotation",
        "y-axis line",
        "vertical baseline"
      ],
      "lifecycle": "Mutable resource",
      "resources": {
        "prerequisites": [
          "existing y-axis line",
          "compatible scale or encoding context"
        ],
        "owns": [],
        "idOptions": []
      },
      "authoringRoles": [
        "H3"
      ],
      "wraps": [
        "editGraphics"
      ],
      "editableVia": [
        "editYAxisLine"
      ],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [
        {
          "path": "lineWidth",
          "unit": "logical-pixel"
        }
      ],
      "inference": [],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "existing y-axis line",
          "compatible scale or encoding context"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "color",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "lineWidth",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "position",
          "required": false,
          "type": "YAxisPosition | undefined"
        }
      ],
      "callPatterns": [
        "editYAxisLine({ color?, lineWidth?, position? })"
      ],
      "snippet": "program.editYAxisLine({ color: \"#f28e2b\" })",
      "errors": [],
      "route": "/reference/actions/guides/#edityaxisline"
    },
    {
      "schemaVersion": 3,
      "name": "createXAxisTicks",
      "layer": "user-facing",
      "domain": "axes",
      "summary": "Creates x-axis ticks for horizontal tick marks.",
      "signature": "createXAxisTicks(options?: AxisTickOptions<XAxisPosition>): ChartProgram;",
      "intents": [
        "create x axis ticks",
        "create",
        "add",
        "axis guide",
        "scale annotation",
        "x-axis ticks",
        "horizontal tick marks"
      ],
      "lifecycle": "Mutable resource",
      "resources": {
        "prerequisites": [
          "compatible scale or encoding context"
        ],
        "owns": [
          "x-axis ticks"
        ],
        "idOptions": [
          "scale"
        ]
      },
      "authoringRoles": [
        "H3"
      ],
      "wraps": [
        "editSemantic",
        "createGraphics",
        "editXAxisTicks"
      ],
      "editableVia": [
        "editXAxisTicks"
      ],
      "supports": {
        "entryPoints": [
          "default",
          "basic"
        ]
      },
      "units": [
        {
          "path": "count",
          "unit": "count"
        },
        {
          "path": "lineWidth",
          "unit": "logical-pixel"
        },
        {
          "path": "length",
          "unit": "logical-pixel"
        }
      ],
      "inference": [
        {
          "input": "scale",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "omitted optional options",
          "strategy": "documented-default"
        }
      ],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "compatible scale or encoding context"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "scale",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "position",
          "required": false,
          "type": "XAxisPosition | undefined"
        },
        {
          "name": "count",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "values",
          "required": false,
          "type": "readonly AxisValue[] | undefined"
        },
        {
          "name": "color",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "lineWidth",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "length",
          "required": false,
          "type": "number | undefined"
        }
      ],
      "callPatterns": [
        "createXAxisTicks({ scale?, position?, count?, values?, color?, lineWidth?, length? })"
      ],
      "snippet": "program.createXAxisTicks({})",
      "errors": [],
      "route": "/reference/actions/guides/#createxaxisticks"
    },
    {
      "schemaVersion": 3,
      "name": "createYAxisTicks",
      "layer": "user-facing",
      "domain": "axes",
      "summary": "Creates y-axis ticks for vertical tick marks.",
      "signature": "createYAxisTicks(options?: AxisTickOptions<YAxisPosition>): ChartProgram;",
      "intents": [
        "create y axis ticks",
        "create",
        "add",
        "axis guide",
        "scale annotation",
        "y-axis ticks",
        "vertical tick marks"
      ],
      "lifecycle": "Mutable resource",
      "resources": {
        "prerequisites": [
          "compatible scale or encoding context"
        ],
        "owns": [
          "y-axis ticks"
        ],
        "idOptions": [
          "scale"
        ]
      },
      "authoringRoles": [
        "H3"
      ],
      "wraps": [
        "editSemantic",
        "createGraphics",
        "editYAxisTicks"
      ],
      "editableVia": [
        "editYAxisTicks"
      ],
      "supports": {
        "entryPoints": [
          "default",
          "basic"
        ]
      },
      "units": [
        {
          "path": "count",
          "unit": "count"
        },
        {
          "path": "lineWidth",
          "unit": "logical-pixel"
        },
        {
          "path": "length",
          "unit": "logical-pixel"
        }
      ],
      "inference": [
        {
          "input": "scale",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "omitted optional options",
          "strategy": "documented-default"
        }
      ],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "compatible scale or encoding context"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "scale",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "position",
          "required": false,
          "type": "YAxisPosition | undefined"
        },
        {
          "name": "count",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "values",
          "required": false,
          "type": "readonly AxisValue[] | undefined"
        },
        {
          "name": "color",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "lineWidth",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "length",
          "required": false,
          "type": "number | undefined"
        }
      ],
      "callPatterns": [
        "createYAxisTicks({ scale?, position?, count?, values?, color?, lineWidth?, length? })"
      ],
      "snippet": "program.createYAxisTicks({})",
      "errors": [],
      "route": "/reference/actions/guides/#createyaxisticks"
    },
    {
      "schemaVersion": 3,
      "name": "editXAxisTicks",
      "layer": "user-facing",
      "domain": "axes",
      "summary": "Edits x-axis ticks, including settings for horizontal tick marks.",
      "signature": "editXAxisTicks(options?: Omit<AxisTickOptions<XAxisPosition>, \"scale\">): ChartProgram;",
      "intents": [
        "edit x axis ticks",
        "edit",
        "change",
        "axis guide",
        "scale annotation",
        "x-axis ticks",
        "horizontal tick marks"
      ],
      "lifecycle": "Mutable resource",
      "resources": {
        "prerequisites": [
          "existing x-axis ticks",
          "compatible scale or encoding context"
        ],
        "owns": [],
        "idOptions": []
      },
      "authoringRoles": [
        "H3"
      ],
      "wraps": [
        "editGraphics"
      ],
      "editableVia": [
        "editXAxisTicks"
      ],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [
        {
          "path": "lineWidth",
          "unit": "logical-pixel"
        },
        {
          "path": "length",
          "unit": "logical-pixel"
        },
        {
          "path": "count",
          "unit": "count"
        }
      ],
      "inference": [],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "existing x-axis ticks",
          "compatible scale or encoding context"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "color",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "lineWidth",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "length",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "position",
          "required": false,
          "type": "XAxisPosition | undefined"
        },
        {
          "name": "count",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "values",
          "required": false,
          "type": "readonly AxisValue[] | undefined"
        }
      ],
      "callPatterns": [
        "editXAxisTicks({ color?, lineWidth?, length?, position?, count?, values? })"
      ],
      "snippet": "program.editXAxisTicks({ color: \"#f28e2b\" })",
      "errors": [],
      "route": "/reference/actions/guides/#editxaxisticks"
    },
    {
      "schemaVersion": 3,
      "name": "editYAxisTicks",
      "layer": "user-facing",
      "domain": "axes",
      "summary": "Edits y-axis ticks, including settings for vertical tick marks.",
      "signature": "editYAxisTicks(options?: Omit<AxisTickOptions<YAxisPosition>, \"scale\">): ChartProgram;",
      "intents": [
        "edit y axis ticks",
        "edit",
        "change",
        "axis guide",
        "scale annotation",
        "y-axis ticks",
        "vertical tick marks"
      ],
      "lifecycle": "Mutable resource",
      "resources": {
        "prerequisites": [
          "existing y-axis ticks",
          "compatible scale or encoding context"
        ],
        "owns": [],
        "idOptions": []
      },
      "authoringRoles": [
        "H3"
      ],
      "wraps": [
        "editGraphics"
      ],
      "editableVia": [
        "editYAxisTicks"
      ],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [
        {
          "path": "lineWidth",
          "unit": "logical-pixel"
        },
        {
          "path": "length",
          "unit": "logical-pixel"
        },
        {
          "path": "count",
          "unit": "count"
        }
      ],
      "inference": [],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "existing y-axis ticks",
          "compatible scale or encoding context"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "color",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "lineWidth",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "length",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "position",
          "required": false,
          "type": "YAxisPosition | undefined"
        },
        {
          "name": "count",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "values",
          "required": false,
          "type": "readonly AxisValue[] | undefined"
        }
      ],
      "callPatterns": [
        "editYAxisTicks({ color?, lineWidth?, length?, position?, count?, values? })"
      ],
      "snippet": "program.editYAxisTicks({ color: \"#f28e2b\" })",
      "errors": [],
      "route": "/reference/actions/guides/#edityaxisticks"
    },
    {
      "schemaVersion": 3,
      "name": "createXAxisLabels",
      "layer": "user-facing",
      "domain": "axes",
      "summary": "Creates x-axis labels for horizontal tick text.",
      "signature": "createXAxisLabels(options?: AxisLabelOptions<XAxisPosition>): ChartProgram;",
      "intents": [
        "create x axis labels",
        "create",
        "add",
        "axis guide",
        "scale annotation",
        "x-axis labels",
        "horizontal tick text"
      ],
      "lifecycle": "Mutable resource",
      "resources": {
        "prerequisites": [
          "compatible scale or encoding context"
        ],
        "owns": [
          "x-axis labels"
        ],
        "idOptions": [
          "scale"
        ]
      },
      "authoringRoles": [
        "H3"
      ],
      "wraps": [
        "editSemantic",
        "createGraphics",
        "editXAxisLabels"
      ],
      "editableVia": [
        "editXAxisLabels"
      ],
      "supports": {
        "entryPoints": [
          "default",
          "basic"
        ]
      },
      "units": [
        {
          "path": "count",
          "unit": "count"
        },
        {
          "path": "offset",
          "unit": "logical-pixel"
        },
        {
          "path": "fontSize",
          "unit": "logical-pixel"
        },
        {
          "path": "rotation",
          "unit": "angle"
        },
        {
          "path": "maxWidth",
          "unit": "logical-pixel"
        },
        {
          "path": "lineHeight",
          "unit": "logical-pixel"
        }
      ],
      "inference": [
        {
          "input": "scale",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "labelMap",
          "strategy": "documented-auto"
        },
        {
          "input": "omitted optional options",
          "strategy": "documented-default"
        }
      ],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "compatible scale or encoding context"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "scale",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "position",
          "required": false,
          "type": "XAxisPosition | undefined"
        },
        {
          "name": "count",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "values",
          "required": false,
          "type": "readonly AxisValue[] | undefined"
        },
        {
          "name": "labelMap",
          "required": false,
          "type": "\"auto\" | DisplayLabelMap | undefined"
        },
        {
          "name": "offset",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "format",
          "required": false,
          "type": "AxisFormat | undefined"
        },
        {
          "name": "color",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "fontSize",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "fontFamily",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "fontWeight",
          "required": false,
          "type": "string | number | undefined"
        },
        {
          "name": "rotation",
          "required": false,
          "type": "RotationInput | undefined"
        },
        {
          "name": "maxWidth",
          "required": false,
          "type": "number | false | undefined"
        },
        {
          "name": "wrap",
          "required": false,
          "type": "\"character\" | \"word\" | undefined"
        },
        {
          "name": "lineHeight",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "overlap",
          "required": false,
          "type": "\"allow\" | \"error\" | undefined"
        }
      ],
      "callPatterns": [
        "createXAxisLabels({ scale?, position?, count?, values?, labelMap?, offset?, format?, color? })"
      ],
      "snippet": "program.createXAxisLabels({})",
      "errors": [],
      "route": "/reference/actions/guides/#createxaxislabels"
    },
    {
      "schemaVersion": 3,
      "name": "createYAxisLabels",
      "layer": "user-facing",
      "domain": "axes",
      "summary": "Creates y-axis labels for vertical tick text.",
      "signature": "createYAxisLabels(options?: AxisLabelOptions<YAxisPosition>): ChartProgram;",
      "intents": [
        "create y axis labels",
        "create",
        "add",
        "axis guide",
        "scale annotation",
        "y-axis labels",
        "vertical tick text"
      ],
      "lifecycle": "Mutable resource",
      "resources": {
        "prerequisites": [
          "compatible scale or encoding context"
        ],
        "owns": [
          "y-axis labels"
        ],
        "idOptions": [
          "scale"
        ]
      },
      "authoringRoles": [
        "H3"
      ],
      "wraps": [
        "editSemantic",
        "createGraphics",
        "editYAxisLabels"
      ],
      "editableVia": [
        "editYAxisLabels"
      ],
      "supports": {
        "entryPoints": [
          "default",
          "basic"
        ]
      },
      "units": [
        {
          "path": "count",
          "unit": "count"
        },
        {
          "path": "offset",
          "unit": "logical-pixel"
        },
        {
          "path": "fontSize",
          "unit": "logical-pixel"
        },
        {
          "path": "rotation",
          "unit": "angle"
        },
        {
          "path": "maxWidth",
          "unit": "logical-pixel"
        },
        {
          "path": "lineHeight",
          "unit": "logical-pixel"
        }
      ],
      "inference": [
        {
          "input": "scale",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "labelMap",
          "strategy": "documented-auto"
        },
        {
          "input": "omitted optional options",
          "strategy": "documented-default"
        }
      ],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "compatible scale or encoding context"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "scale",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "position",
          "required": false,
          "type": "YAxisPosition | undefined"
        },
        {
          "name": "count",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "values",
          "required": false,
          "type": "readonly AxisValue[] | undefined"
        },
        {
          "name": "labelMap",
          "required": false,
          "type": "\"auto\" | DisplayLabelMap | undefined"
        },
        {
          "name": "offset",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "format",
          "required": false,
          "type": "AxisFormat | undefined"
        },
        {
          "name": "color",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "fontSize",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "fontFamily",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "fontWeight",
          "required": false,
          "type": "string | number | undefined"
        },
        {
          "name": "rotation",
          "required": false,
          "type": "RotationInput | undefined"
        },
        {
          "name": "maxWidth",
          "required": false,
          "type": "number | false | undefined"
        },
        {
          "name": "wrap",
          "required": false,
          "type": "\"character\" | \"word\" | undefined"
        },
        {
          "name": "lineHeight",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "overlap",
          "required": false,
          "type": "\"allow\" | \"error\" | undefined"
        }
      ],
      "callPatterns": [
        "createYAxisLabels({ scale?, position?, count?, values?, labelMap?, offset?, format?, color? })"
      ],
      "snippet": "program.createYAxisLabels({})",
      "errors": [],
      "route": "/reference/actions/guides/#createyaxislabels"
    },
    {
      "schemaVersion": 3,
      "name": "editXAxisLabels",
      "layer": "user-facing",
      "domain": "axes",
      "summary": "Edits x-axis labels, including settings for horizontal tick text.",
      "signature": "editXAxisLabels(options?: Omit<AxisLabelOptions<XAxisPosition>, \"scale\">): ChartProgram;",
      "intents": [
        "edit x axis labels",
        "edit",
        "change",
        "axis guide",
        "scale annotation",
        "x-axis labels",
        "horizontal tick text"
      ],
      "lifecycle": "Mutable resource",
      "resources": {
        "prerequisites": [
          "existing x-axis labels",
          "compatible scale or encoding context"
        ],
        "owns": [],
        "idOptions": []
      },
      "authoringRoles": [
        "H3"
      ],
      "wraps": [
        "editGraphics",
        "editXAxisTitle"
      ],
      "editableVia": [
        "editXAxisLabels"
      ],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [
        {
          "path": "offset",
          "unit": "logical-pixel"
        },
        {
          "path": "fontSize",
          "unit": "logical-pixel"
        },
        {
          "path": "rotation",
          "unit": "angle"
        },
        {
          "path": "maxWidth",
          "unit": "logical-pixel"
        },
        {
          "path": "lineHeight",
          "unit": "logical-pixel"
        },
        {
          "path": "count",
          "unit": "count"
        }
      ],
      "inference": [
        {
          "input": "labelMap",
          "strategy": "documented-auto"
        }
      ],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "existing x-axis labels",
          "compatible scale or encoding context"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "labelMap",
          "required": false,
          "type": "\"auto\" | DisplayLabelMap | undefined"
        },
        {
          "name": "offset",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "format",
          "required": false,
          "type": "AxisFormat | undefined"
        },
        {
          "name": "color",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "fontSize",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "fontFamily",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "fontWeight",
          "required": false,
          "type": "string | number | undefined"
        },
        {
          "name": "rotation",
          "required": false,
          "type": "RotationInput | undefined"
        },
        {
          "name": "maxWidth",
          "required": false,
          "type": "number | false | undefined"
        },
        {
          "name": "wrap",
          "required": false,
          "type": "\"character\" | \"word\" | undefined"
        },
        {
          "name": "lineHeight",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "overlap",
          "required": false,
          "type": "\"allow\" | \"error\" | undefined"
        },
        {
          "name": "position",
          "required": false,
          "type": "XAxisPosition | undefined"
        },
        {
          "name": "count",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "values",
          "required": false,
          "type": "readonly AxisValue[] | undefined"
        }
      ],
      "callPatterns": [
        "editXAxisLabels({ labelMap?, offset?, format?, color?, fontSize?, fontFamily?, fontWeight?, rotation? })"
      ],
      "snippet": "program.editXAxisLabels({ labelMap: \"auto\" })",
      "errors": [],
      "route": "/reference/actions/guides/#editxaxislabels"
    },
    {
      "schemaVersion": 3,
      "name": "editYAxisLabels",
      "layer": "user-facing",
      "domain": "axes",
      "summary": "Edits y-axis labels, including settings for vertical tick text.",
      "signature": "editYAxisLabels(options?: Omit<AxisLabelOptions<YAxisPosition>, \"scale\">): ChartProgram;",
      "intents": [
        "edit y axis labels",
        "edit",
        "change",
        "axis guide",
        "scale annotation",
        "y-axis labels",
        "vertical tick text"
      ],
      "lifecycle": "Mutable resource",
      "resources": {
        "prerequisites": [
          "existing y-axis labels",
          "compatible scale or encoding context"
        ],
        "owns": [],
        "idOptions": []
      },
      "authoringRoles": [
        "H3"
      ],
      "wraps": [
        "editGraphics",
        "editYAxisTitle"
      ],
      "editableVia": [
        "editYAxisLabels"
      ],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [
        {
          "path": "offset",
          "unit": "logical-pixel"
        },
        {
          "path": "fontSize",
          "unit": "logical-pixel"
        },
        {
          "path": "rotation",
          "unit": "angle"
        },
        {
          "path": "maxWidth",
          "unit": "logical-pixel"
        },
        {
          "path": "lineHeight",
          "unit": "logical-pixel"
        },
        {
          "path": "count",
          "unit": "count"
        }
      ],
      "inference": [
        {
          "input": "labelMap",
          "strategy": "documented-auto"
        }
      ],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "existing y-axis labels",
          "compatible scale or encoding context"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "labelMap",
          "required": false,
          "type": "\"auto\" | DisplayLabelMap | undefined"
        },
        {
          "name": "offset",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "format",
          "required": false,
          "type": "AxisFormat | undefined"
        },
        {
          "name": "color",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "fontSize",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "fontFamily",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "fontWeight",
          "required": false,
          "type": "string | number | undefined"
        },
        {
          "name": "rotation",
          "required": false,
          "type": "RotationInput | undefined"
        },
        {
          "name": "maxWidth",
          "required": false,
          "type": "number | false | undefined"
        },
        {
          "name": "wrap",
          "required": false,
          "type": "\"character\" | \"word\" | undefined"
        },
        {
          "name": "lineHeight",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "overlap",
          "required": false,
          "type": "\"allow\" | \"error\" | undefined"
        },
        {
          "name": "position",
          "required": false,
          "type": "YAxisPosition | undefined"
        },
        {
          "name": "count",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "values",
          "required": false,
          "type": "readonly AxisValue[] | undefined"
        }
      ],
      "callPatterns": [
        "editYAxisLabels({ labelMap?, offset?, format?, color?, fontSize?, fontFamily?, fontWeight?, rotation? })"
      ],
      "snippet": "program.editYAxisLabels({ labelMap: \"auto\" })",
      "errors": [],
      "route": "/reference/actions/guides/#edityaxislabels"
    },
    {
      "schemaVersion": 3,
      "name": "createXAxisTicksAndLabels",
      "layer": "user-facing",
      "domain": "axes",
      "summary": "Creates x-axis ticks and labels for coordinated horizontal guide.",
      "signature": "createXAxisTicksAndLabels(options?: AxisTicksAndLabelsOptions<XAxisPosition>): ChartProgram;",
      "intents": [
        "create x axis ticks and labels",
        "create",
        "add",
        "axis guide",
        "scale annotation",
        "x-axis ticks and labels",
        "coordinated horizontal guide"
      ],
      "lifecycle": "Mutable resource",
      "resources": {
        "prerequisites": [
          "compatible scale or encoding context"
        ],
        "owns": [
          "x-axis ticks and labels"
        ],
        "idOptions": [
          "scale"
        ]
      },
      "authoringRoles": [
        "H3"
      ],
      "wraps": [
        "createXAxisTicks",
        "createXAxisLabels"
      ],
      "editableVia": [
        "editXAxisTicksAndLabels"
      ],
      "supports": {
        "entryPoints": [
          "default",
          "basic"
        ]
      },
      "units": [
        {
          "path": "count",
          "unit": "count"
        }
      ],
      "inference": [
        {
          "input": "scale",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "omitted optional options",
          "strategy": "documented-default"
        }
      ],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "compatible scale or encoding context"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "scale",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "position",
          "required": false,
          "type": "XAxisPosition | undefined"
        },
        {
          "name": "count",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "values",
          "required": false,
          "type": "readonly AxisValue[] | undefined"
        },
        {
          "name": "ticks",
          "required": false,
          "type": "AxisTickStyleOptions | undefined"
        },
        {
          "name": "labels",
          "required": false,
          "type": "(AxisLabelStyleOptions & AxisLabelLayoutOptions & DisplayLabelOptions) | undefined"
        }
      ],
      "callPatterns": [
        "createXAxisTicksAndLabels({ scale?, position?, count?, values?, ticks?, labels? })"
      ],
      "snippet": "program.createXAxisTicksAndLabels({})",
      "errors": [],
      "route": "/reference/actions/guides/#createxaxisticksandlabels"
    },
    {
      "schemaVersion": 3,
      "name": "createYAxisTicksAndLabels",
      "layer": "user-facing",
      "domain": "axes",
      "summary": "Creates y-axis ticks and labels for coordinated vertical guide.",
      "signature": "createYAxisTicksAndLabels(options?: AxisTicksAndLabelsOptions<YAxisPosition>): ChartProgram;",
      "intents": [
        "create y axis ticks and labels",
        "create",
        "add",
        "axis guide",
        "scale annotation",
        "y-axis ticks and labels",
        "coordinated vertical guide"
      ],
      "lifecycle": "Mutable resource",
      "resources": {
        "prerequisites": [
          "compatible scale or encoding context"
        ],
        "owns": [
          "y-axis ticks and labels"
        ],
        "idOptions": [
          "scale"
        ]
      },
      "authoringRoles": [
        "H3"
      ],
      "wraps": [
        "createYAxisTicks",
        "createYAxisLabels"
      ],
      "editableVia": [
        "editYAxisTicksAndLabels"
      ],
      "supports": {
        "entryPoints": [
          "default",
          "basic"
        ]
      },
      "units": [
        {
          "path": "count",
          "unit": "count"
        }
      ],
      "inference": [
        {
          "input": "scale",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "omitted optional options",
          "strategy": "documented-default"
        }
      ],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "compatible scale or encoding context"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "scale",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "position",
          "required": false,
          "type": "YAxisPosition | undefined"
        },
        {
          "name": "count",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "values",
          "required": false,
          "type": "readonly AxisValue[] | undefined"
        },
        {
          "name": "ticks",
          "required": false,
          "type": "AxisTickStyleOptions | undefined"
        },
        {
          "name": "labels",
          "required": false,
          "type": "(AxisLabelStyleOptions & AxisLabelLayoutOptions & DisplayLabelOptions) | undefined"
        }
      ],
      "callPatterns": [
        "createYAxisTicksAndLabels({ scale?, position?, count?, values?, ticks?, labels? })"
      ],
      "snippet": "program.createYAxisTicksAndLabels({})",
      "errors": [],
      "route": "/reference/actions/guides/#createyaxisticksandlabels"
    },
    {
      "schemaVersion": 3,
      "name": "editXAxisTicksAndLabels",
      "layer": "user-facing",
      "domain": "axes",
      "summary": "Edits x-axis ticks and labels, including settings for coordinated horizontal guide.",
      "signature": "editXAxisTicksAndLabels(options: Omit<AxisTicksAndLabelsOptions<XAxisPosition>, \"scale\">): ChartProgram;",
      "intents": [
        "edit x axis ticks and labels",
        "edit",
        "change",
        "axis guide",
        "scale annotation",
        "x-axis ticks and labels",
        "coordinated horizontal guide"
      ],
      "lifecycle": "Mutable resource",
      "resources": {
        "prerequisites": [
          "existing x-axis ticks and labels",
          "compatible scale or encoding context"
        ],
        "owns": [],
        "idOptions": []
      },
      "authoringRoles": [
        "H3"
      ],
      "wraps": [
        "editXAxisTicks",
        "editXAxisLabels"
      ],
      "editableVia": [
        "editXAxisTicksAndLabels"
      ],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [
        {
          "path": "count",
          "unit": "count"
        }
      ],
      "inference": [],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "existing x-axis ticks and labels",
          "compatible scale or encoding context"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "position",
          "required": false,
          "type": "XAxisPosition | undefined"
        },
        {
          "name": "count",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "values",
          "required": false,
          "type": "readonly AxisValue[] | undefined"
        },
        {
          "name": "ticks",
          "required": false,
          "type": "AxisTickStyleOptions | undefined"
        },
        {
          "name": "labels",
          "required": false,
          "type": "(AxisLabelStyleOptions & AxisLabelLayoutOptions & DisplayLabelOptions) | undefined"
        }
      ],
      "callPatterns": [
        "editXAxisTicksAndLabels({ position?, count?, values?, ticks?, labels? })"
      ],
      "snippet": "program.editXAxisTicksAndLabels({ position: \"bottom\" })",
      "errors": [],
      "route": "/reference/actions/guides/#editxaxisticksandlabels"
    },
    {
      "schemaVersion": 3,
      "name": "editYAxisTicksAndLabels",
      "layer": "user-facing",
      "domain": "axes",
      "summary": "Edits y-axis ticks and labels, including settings for coordinated vertical guide.",
      "signature": "editYAxisTicksAndLabels(options: Omit<AxisTicksAndLabelsOptions<YAxisPosition>, \"scale\">): ChartProgram;",
      "intents": [
        "edit y axis ticks and labels",
        "edit",
        "change",
        "axis guide",
        "scale annotation",
        "y-axis ticks and labels",
        "coordinated vertical guide"
      ],
      "lifecycle": "Mutable resource",
      "resources": {
        "prerequisites": [
          "existing y-axis ticks and labels",
          "compatible scale or encoding context"
        ],
        "owns": [],
        "idOptions": []
      },
      "authoringRoles": [
        "H3"
      ],
      "wraps": [
        "editYAxisTicks",
        "editYAxisLabels"
      ],
      "editableVia": [
        "editYAxisTicksAndLabels"
      ],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [
        {
          "path": "count",
          "unit": "count"
        }
      ],
      "inference": [],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "existing y-axis ticks and labels",
          "compatible scale or encoding context"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "position",
          "required": false,
          "type": "YAxisPosition | undefined"
        },
        {
          "name": "count",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "values",
          "required": false,
          "type": "readonly AxisValue[] | undefined"
        },
        {
          "name": "ticks",
          "required": false,
          "type": "AxisTickStyleOptions | undefined"
        },
        {
          "name": "labels",
          "required": false,
          "type": "(AxisLabelStyleOptions & AxisLabelLayoutOptions & DisplayLabelOptions) | undefined"
        }
      ],
      "callPatterns": [
        "editYAxisTicksAndLabels({ position?, count?, values?, ticks?, labels? })"
      ],
      "snippet": "program.editYAxisTicksAndLabels({ position: \"left\" })",
      "errors": [],
      "route": "/reference/actions/guides/#edityaxisticksandlabels"
    },
    {
      "schemaVersion": 3,
      "name": "createXAxisTitle",
      "layer": "user-facing",
      "domain": "axes",
      "summary": "Creates x-axis title for horizontal field title.",
      "signature": "createXAxisTitle(options?: AxisTitleOptions<XAxisPosition>): ChartProgram;",
      "intents": [
        "create x axis title",
        "create",
        "add",
        "axis guide",
        "scale annotation",
        "x-axis title",
        "horizontal field title"
      ],
      "lifecycle": "Mutable resource",
      "resources": {
        "prerequisites": [
          "compatible scale or encoding context"
        ],
        "owns": [
          "x-axis title"
        ],
        "idOptions": [
          "scale"
        ]
      },
      "authoringRoles": [
        "H3"
      ],
      "wraps": [
        "editSemantic",
        "createGraphics",
        "editXAxisTitle"
      ],
      "editableVia": [
        "editXAxisTitle"
      ],
      "supports": {
        "entryPoints": [
          "default",
          "basic"
        ]
      },
      "units": [
        {
          "path": "offset",
          "unit": "logical-pixel"
        },
        {
          "path": "rotation",
          "unit": "angle"
        },
        {
          "path": "fontSize",
          "unit": "logical-pixel"
        }
      ],
      "inference": [
        {
          "input": "scale",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "omitted optional options",
          "strategy": "documented-default"
        }
      ],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "compatible scale or encoding context"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "text",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "scale",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "position",
          "required": false,
          "type": "XAxisPosition | undefined"
        },
        {
          "name": "at",
          "required": false,
          "type": "number | \"center\" | \"end\" | \"start\" | undefined"
        },
        {
          "name": "offset",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "rotation",
          "required": false,
          "type": "RotationInput | undefined"
        },
        {
          "name": "color",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "fontSize",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "fontFamily",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "fontWeight",
          "required": false,
          "type": "string | number | undefined"
        }
      ],
      "callPatterns": [
        "createXAxisTitle({ scale?, text?, position?, at?, offset?, rotation?, color?, fontSize? })"
      ],
      "snippet": "program.createXAxisTitle({})",
      "errors": [],
      "route": "/reference/actions/guides/#createxaxistitle"
    },
    {
      "schemaVersion": 3,
      "name": "createYAxisTitle",
      "layer": "user-facing",
      "domain": "axes",
      "summary": "Creates y-axis title for vertical field title.",
      "signature": "createYAxisTitle(options?: AxisTitleOptions<YAxisPosition>): ChartProgram;",
      "intents": [
        "create y axis title",
        "create",
        "add",
        "axis guide",
        "scale annotation",
        "y-axis title",
        "vertical field title"
      ],
      "lifecycle": "Mutable resource",
      "resources": {
        "prerequisites": [
          "compatible scale or encoding context"
        ],
        "owns": [
          "y-axis title"
        ],
        "idOptions": [
          "scale"
        ]
      },
      "authoringRoles": [
        "H3"
      ],
      "wraps": [
        "editSemantic",
        "createGraphics",
        "editYAxisTitle"
      ],
      "editableVia": [
        "editYAxisTitle"
      ],
      "supports": {
        "entryPoints": [
          "default",
          "basic"
        ]
      },
      "units": [
        {
          "path": "offset",
          "unit": "logical-pixel"
        },
        {
          "path": "rotation",
          "unit": "angle"
        },
        {
          "path": "fontSize",
          "unit": "logical-pixel"
        }
      ],
      "inference": [
        {
          "input": "scale",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "omitted optional options",
          "strategy": "documented-default"
        }
      ],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "compatible scale or encoding context"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "text",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "scale",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "position",
          "required": false,
          "type": "YAxisPosition | undefined"
        },
        {
          "name": "at",
          "required": false,
          "type": "number | \"center\" | \"end\" | \"start\" | undefined"
        },
        {
          "name": "offset",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "rotation",
          "required": false,
          "type": "RotationInput | undefined"
        },
        {
          "name": "color",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "fontSize",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "fontFamily",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "fontWeight",
          "required": false,
          "type": "string | number | undefined"
        }
      ],
      "callPatterns": [
        "createYAxisTitle({ scale?, text?, position?, at?, offset?, rotation?, color?, fontSize? })"
      ],
      "snippet": "program.createYAxisTitle({})",
      "errors": [],
      "route": "/reference/actions/guides/#createyaxistitle"
    },
    {
      "schemaVersion": 3,
      "name": "editXAxisTitle",
      "layer": "user-facing",
      "domain": "axes",
      "summary": "Edits x-axis title, including settings for horizontal field title.",
      "signature": "editXAxisTitle(options?: Omit<AxisTitleOptions<XAxisPosition>, \"scale\">): ChartProgram;",
      "intents": [
        "edit x axis title",
        "edit",
        "change",
        "axis guide",
        "scale annotation",
        "x-axis title",
        "horizontal field title"
      ],
      "lifecycle": "Mutable resource",
      "resources": {
        "prerequisites": [
          "existing x-axis title",
          "compatible scale or encoding context"
        ],
        "owns": [],
        "idOptions": []
      },
      "authoringRoles": [
        "H3"
      ],
      "wraps": [
        "editGraphics",
        "editSemantic"
      ],
      "editableVia": [
        "editXAxisTitle"
      ],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [
        {
          "path": "offset",
          "unit": "logical-pixel"
        },
        {
          "path": "rotation",
          "unit": "angle"
        },
        {
          "path": "fontSize",
          "unit": "logical-pixel"
        }
      ],
      "inference": [],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "existing x-axis title",
          "compatible scale or encoding context"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "text",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "position",
          "required": false,
          "type": "XAxisPosition | undefined"
        },
        {
          "name": "at",
          "required": false,
          "type": "number | \"center\" | \"end\" | \"start\" | undefined"
        },
        {
          "name": "offset",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "rotation",
          "required": false,
          "type": "RotationInput | undefined"
        },
        {
          "name": "color",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "fontSize",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "fontFamily",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "fontWeight",
          "required": false,
          "type": "string | number | undefined"
        }
      ],
      "callPatterns": [
        "editXAxisTitle({ text?, position?, at?, offset?, rotation?, color?, fontSize?, fontFamily? })"
      ],
      "snippet": "program.editXAxisTitle({ text: \"Chart title\" })",
      "errors": [],
      "route": "/reference/actions/guides/#editxaxistitle"
    },
    {
      "schemaVersion": 3,
      "name": "editYAxisTitle",
      "layer": "user-facing",
      "domain": "axes",
      "summary": "Edits y-axis title, including settings for vertical field title.",
      "signature": "editYAxisTitle(options?: Omit<AxisTitleOptions<YAxisPosition>, \"scale\">): ChartProgram;",
      "intents": [
        "edit y axis title",
        "edit",
        "change",
        "axis guide",
        "scale annotation",
        "y-axis title",
        "vertical field title"
      ],
      "lifecycle": "Mutable resource",
      "resources": {
        "prerequisites": [
          "existing y-axis title",
          "compatible scale or encoding context"
        ],
        "owns": [],
        "idOptions": []
      },
      "authoringRoles": [
        "H3"
      ],
      "wraps": [
        "editGraphics",
        "editSemantic"
      ],
      "editableVia": [
        "editYAxisTitle"
      ],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [
        {
          "path": "offset",
          "unit": "logical-pixel"
        },
        {
          "path": "rotation",
          "unit": "angle"
        },
        {
          "path": "fontSize",
          "unit": "logical-pixel"
        }
      ],
      "inference": [],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "existing y-axis title",
          "compatible scale or encoding context"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "text",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "position",
          "required": false,
          "type": "YAxisPosition | undefined"
        },
        {
          "name": "at",
          "required": false,
          "type": "number | \"center\" | \"end\" | \"start\" | undefined"
        },
        {
          "name": "offset",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "rotation",
          "required": false,
          "type": "RotationInput | undefined"
        },
        {
          "name": "color",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "fontSize",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "fontFamily",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "fontWeight",
          "required": false,
          "type": "string | number | undefined"
        }
      ],
      "callPatterns": [
        "editYAxisTitle({ text?, position?, at?, offset?, rotation?, color?, fontSize?, fontFamily? })"
      ],
      "snippet": "program.editYAxisTitle({ text: \"Chart title\" })",
      "errors": [],
      "route": "/reference/actions/guides/#edityaxistitle"
    },
    {
      "schemaVersion": 3,
      "name": "editXAxis",
      "layer": "user-facing",
      "domain": "axes",
      "summary": "Edits x axis, including settings for horizontal scale guide.",
      "signature": "editXAxis(options: EditAxisOptions<XAxisPosition>): ChartProgram;",
      "intents": [
        "edit x axis",
        "edit",
        "change",
        "axis guide",
        "scale annotation",
        "x axis",
        "horizontal scale guide"
      ],
      "lifecycle": "Mutable resource",
      "resources": {
        "prerequisites": [
          "existing x axis",
          "compatible scale or encoding context"
        ],
        "owns": [],
        "idOptions": []
      },
      "authoringRoles": [
        "H3"
      ],
      "wraps": [
        "editXAxisLine",
        "editXAxisTicks",
        "editXAxisLabels",
        "editXAxisTitle"
      ],
      "editableVia": [
        "editXAxis"
      ],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [],
      "inference": [],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "existing x axis",
          "compatible scale or encoding context"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "position",
          "required": false,
          "type": "XAxisPosition | undefined"
        },
        {
          "name": "line",
          "required": false,
          "type": "false | AxisLineStyleOptions | undefined"
        },
        {
          "name": "ticks",
          "required": false,
          "type": "false | Omit<AxisTickOptions<XAxisPosition>, \"position\" | \"scale\"> | undefined"
        },
        {
          "name": "labels",
          "required": false,
          "type": "false | Omit<AxisLabelOptions<XAxisPosition>, \"position\" | \"scale\"> | undefined"
        },
        {
          "name": "ticksAndLabels",
          "required": false,
          "type": "false | Omit<AxisTicksAndLabelsOptions<XAxisPosition>, \"position\" | \"scale\"> | undefined"
        },
        {
          "name": "title",
          "required": false,
          "type": "false | Omit<AxisTitleOptions<XAxisPosition>, \"position\" | \"scale\"> | undefined"
        }
      ],
      "callPatterns": [
        "editXAxis({ position?, line?, ticks?, labels?, ticksAndLabels?, title? })"
      ],
      "snippet": "program.editXAxis({ position: \"bottom\" })",
      "errors": [],
      "route": "/reference/actions/guides/#editxaxis"
    },
    {
      "schemaVersion": 3,
      "name": "editYAxis",
      "layer": "user-facing",
      "domain": "axes",
      "summary": "Edits y axis, including settings for vertical scale guide.",
      "signature": "editYAxis(options: EditAxisOptions<YAxisPosition>): ChartProgram;",
      "intents": [
        "edit y axis",
        "edit",
        "change",
        "axis guide",
        "scale annotation",
        "y axis",
        "vertical scale guide"
      ],
      "lifecycle": "Mutable resource",
      "resources": {
        "prerequisites": [
          "existing y axis",
          "compatible scale or encoding context"
        ],
        "owns": [],
        "idOptions": []
      },
      "authoringRoles": [
        "H3"
      ],
      "wraps": [
        "editYAxisLine",
        "editYAxisTitle"
      ],
      "editableVia": [
        "editYAxis"
      ],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [],
      "inference": [],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "existing y axis",
          "compatible scale or encoding context"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "position",
          "required": false,
          "type": "YAxisPosition | undefined"
        },
        {
          "name": "line",
          "required": false,
          "type": "false | AxisLineStyleOptions | undefined"
        },
        {
          "name": "ticks",
          "required": false,
          "type": "false | Omit<AxisTickOptions<YAxisPosition>, \"position\" | \"scale\"> | undefined"
        },
        {
          "name": "labels",
          "required": false,
          "type": "false | Omit<AxisLabelOptions<YAxisPosition>, \"position\" | \"scale\"> | undefined"
        },
        {
          "name": "ticksAndLabels",
          "required": false,
          "type": "false | Omit<AxisTicksAndLabelsOptions<YAxisPosition>, \"position\" | \"scale\"> | undefined"
        },
        {
          "name": "title",
          "required": false,
          "type": "false | Omit<AxisTitleOptions<YAxisPosition>, \"position\" | \"scale\"> | undefined"
        }
      ],
      "callPatterns": [
        "editYAxis({ position?, line?, ticks?, labels?, ticksAndLabels?, title? })"
      ],
      "snippet": "program.editYAxis({ position: \"left\" })",
      "errors": [],
      "route": "/reference/actions/guides/#edityaxis"
    },
    {
      "schemaVersion": 3,
      "name": "removeXAxis",
      "layer": "user-facing",
      "domain": "axes",
      "summary": "Removes x axis while preserving unrelated chart resources.",
      "signature": "removeXAxis(options?: RemoveAxisOptions): ChartProgram;",
      "intents": [
        "remove x axis",
        "remove",
        "delete",
        "axis guide",
        "scale annotation",
        "x axis",
        "horizontal scale guide"
      ],
      "lifecycle": "Mutable resource",
      "resources": {
        "prerequisites": [
          "existing x axis",
          "compatible scale or encoding context"
        ],
        "owns": [],
        "idOptions": [
          "coordinate",
          "scale"
        ]
      },
      "authoringRoles": [
        "H3"
      ],
      "wraps": [
        "editSemantic",
        "editGraphics"
      ],
      "editableVia": [],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [],
      "inference": [
        {
          "input": "coordinate",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "scale",
          "strategy": "explicit-current-unique-or-error"
        }
      ],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "existing x axis",
          "compatible scale or encoding context"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "coordinate",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "scale",
          "required": false,
          "type": "string | undefined"
        }
      ],
      "callPatterns": [
        "removeXAxis({ coordinate?, scale? })"
      ],
      "snippet": "program.removeXAxis({})",
      "errors": [],
      "route": "/reference/actions/guides/#removexaxis"
    },
    {
      "schemaVersion": 3,
      "name": "removeYAxis",
      "layer": "user-facing",
      "domain": "axes",
      "summary": "Removes y axis while preserving unrelated chart resources.",
      "signature": "removeYAxis(options?: RemoveAxisOptions): ChartProgram;",
      "intents": [
        "remove y axis",
        "remove",
        "delete",
        "axis guide",
        "scale annotation",
        "y axis",
        "vertical scale guide"
      ],
      "lifecycle": "Mutable resource",
      "resources": {
        "prerequisites": [
          "existing y axis",
          "compatible scale or encoding context"
        ],
        "owns": [],
        "idOptions": [
          "coordinate",
          "scale"
        ]
      },
      "authoringRoles": [
        "H3"
      ],
      "wraps": [
        "editSemantic",
        "editGraphics"
      ],
      "editableVia": [],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [],
      "inference": [
        {
          "input": "coordinate",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "scale",
          "strategy": "explicit-current-unique-or-error"
        }
      ],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "existing y axis",
          "compatible scale or encoding context"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "coordinate",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "scale",
          "required": false,
          "type": "string | undefined"
        }
      ],
      "callPatterns": [
        "removeYAxis({ coordinate?, scale? })"
      ],
      "snippet": "program.removeYAxis({})",
      "errors": [],
      "route": "/reference/actions/guides/#removeyaxis"
    },
    {
      "schemaVersion": 3,
      "name": "createGrid",
      "layer": "user-facing",
      "domain": "grid",
      "summary": "Create inferred horizontal and/or vertical Cartesian grid lines behind related marks, or infer the Polar grid families backed by stored theta/radius encodings.",
      "signature": "createGrid(options?: CreateGridOptions): ChartProgram;",
      "intents": [
        "create grid",
        "create",
        "add",
        "grid guide",
        "reference lines",
        "grid",
        "Cartesian reference lines"
      ],
      "lifecycle": "Aggregate create-only",
      "resources": {
        "prerequisites": [
          "compatible scale or encoding context"
        ],
        "owns": [
          "grid"
        ],
        "idOptions": []
      },
      "authoringRoles": [
        "H3"
      ],
      "wraps": [
        "createRadialGrid",
        "createThetaGrid",
        "createHorizontalGrid",
        "createVerticalGrid"
      ],
      "editableVia": [
        "editGrid"
      ],
      "supports": {
        "entryPoints": [
          "default",
          "basic"
        ]
      },
      "units": [],
      "inference": [
        {
          "input": "omitted optional options",
          "strategy": "documented-default"
        }
      ],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "compatible scale or encoding context"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "horizontal",
          "required": false,
          "type": "boolean | GridDirectionOptions | undefined"
        },
        {
          "name": "vertical",
          "required": false,
          "type": "boolean | GridDirectionOptions | undefined"
        },
        {
          "name": "theta",
          "required": false,
          "type": "boolean | PolarGridOptions | undefined"
        },
        {
          "name": "radial",
          "required": false,
          "type": "boolean | PolarGridOptions | undefined"
        }
      ],
      "callPatterns": [
        "createGrid({ horizontal?, vertical?, theta?, radial? })"
      ],
      "snippet": "program.createGrid({})",
      "errors": [],
      "route": "/reference/actions/guides/#creategrid"
    },
    {
      "schemaVersion": 3,
      "name": "createHorizontalGrid",
      "layer": "user-facing",
      "domain": "grid",
      "summary": "Creates horizontal grid for y reference lines.",
      "signature": "createHorizontalGrid(options?: GridDirectionOptions): ChartProgram;",
      "intents": [
        "create horizontal grid",
        "create",
        "add",
        "grid guide",
        "reference lines",
        "horizontal grid",
        "y reference lines"
      ],
      "lifecycle": "Mutable resource",
      "resources": {
        "prerequisites": [
          "compatible scale or encoding context"
        ],
        "owns": [
          "horizontal grid"
        ],
        "idOptions": [
          "scale",
          "coordinate"
        ]
      },
      "authoringRoles": [
        "H3"
      ],
      "wraps": [
        "editSemantic",
        "createGraphics"
      ],
      "editableVia": [
        "editHorizontalGrid"
      ],
      "supports": {
        "entryPoints": [
          "default",
          "basic"
        ]
      },
      "units": [
        {
          "path": "count",
          "unit": "count"
        },
        {
          "path": "lineWidth",
          "unit": "logical-pixel"
        }
      ],
      "inference": [
        {
          "input": "scale",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "coordinate",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "omitted optional options",
          "strategy": "documented-default"
        }
      ],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "compatible scale or encoding context"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "scale",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "coordinate",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "count",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "values",
          "required": false,
          "type": "readonly number[] | undefined"
        },
        {
          "name": "color",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "lineWidth",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "strokeDash",
          "required": false,
          "type": "readonly number[] | undefined"
        }
      ],
      "callPatterns": [
        "createHorizontalGrid({ scale?, coordinate?, count?, values?, color?, lineWidth?, strokeDash? })"
      ],
      "snippet": "program.createHorizontalGrid({})",
      "errors": [],
      "route": "/reference/actions/guides/#createhorizontalgrid"
    },
    {
      "schemaVersion": 3,
      "name": "createVerticalGrid",
      "layer": "user-facing",
      "domain": "grid",
      "summary": "Creates vertical grid for x reference lines.",
      "signature": "createVerticalGrid(options?: GridDirectionOptions): ChartProgram;",
      "intents": [
        "create vertical grid",
        "create",
        "add",
        "grid guide",
        "reference lines",
        "vertical grid",
        "x reference lines"
      ],
      "lifecycle": "Mutable resource",
      "resources": {
        "prerequisites": [
          "compatible scale or encoding context"
        ],
        "owns": [
          "vertical grid"
        ],
        "idOptions": [
          "scale",
          "coordinate"
        ]
      },
      "authoringRoles": [
        "H3"
      ],
      "wraps": [
        "editSemantic",
        "createGraphics"
      ],
      "editableVia": [
        "editVerticalGrid"
      ],
      "supports": {
        "entryPoints": [
          "default",
          "basic"
        ]
      },
      "units": [
        {
          "path": "count",
          "unit": "count"
        },
        {
          "path": "lineWidth",
          "unit": "logical-pixel"
        }
      ],
      "inference": [
        {
          "input": "scale",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "coordinate",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "omitted optional options",
          "strategy": "documented-default"
        }
      ],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "compatible scale or encoding context"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "scale",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "coordinate",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "count",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "values",
          "required": false,
          "type": "readonly number[] | undefined"
        },
        {
          "name": "color",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "lineWidth",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "strokeDash",
          "required": false,
          "type": "readonly number[] | undefined"
        }
      ],
      "callPatterns": [
        "createVerticalGrid({ scale?, coordinate?, count?, values?, color?, lineWidth?, strokeDash? })"
      ],
      "snippet": "program.createVerticalGrid({})",
      "errors": [],
      "route": "/reference/actions/guides/#createverticalgrid"
    },
    {
      "schemaVersion": 3,
      "name": "editHorizontalGrid",
      "layer": "user-facing",
      "domain": "grid",
      "summary": "Edits horizontal grid, including settings for y reference lines.",
      "signature": "editHorizontalGrid(options: EditGridOptions): ChartProgram;",
      "intents": [
        "edit horizontal grid",
        "edit",
        "change",
        "grid guide",
        "reference lines",
        "horizontal grid",
        "y reference lines"
      ],
      "lifecycle": "Mutable resource",
      "resources": {
        "prerequisites": [
          "existing horizontal grid",
          "compatible scale or encoding context"
        ],
        "owns": [],
        "idOptions": []
      },
      "authoringRoles": [
        "H3"
      ],
      "wraps": [],
      "editableVia": [
        "editHorizontalGrid"
      ],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [
        {
          "path": "count",
          "unit": "count"
        },
        {
          "path": "lineWidth",
          "unit": "logical-pixel"
        }
      ],
      "inference": [
        {
          "input": "values",
          "strategy": "documented-auto"
        }
      ],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "existing horizontal grid",
          "compatible scale or encoding context"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "count",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "values",
          "required": false,
          "type": "\"auto\" | readonly number[] | undefined"
        },
        {
          "name": "color",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "lineWidth",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "strokeDash",
          "required": false,
          "type": "readonly number[] | undefined"
        }
      ],
      "callPatterns": [
        "editHorizontalGrid({ count?, values?, color?, lineWidth?, strokeDash? })"
      ],
      "snippet": "program.editHorizontalGrid({ count: 5 })",
      "errors": [],
      "route": "/reference/actions/guides/#edithorizontalgrid"
    },
    {
      "schemaVersion": 3,
      "name": "editVerticalGrid",
      "layer": "user-facing",
      "domain": "grid",
      "summary": "Edits vertical grid, including settings for x reference lines.",
      "signature": "editVerticalGrid(options: EditGridOptions): ChartProgram;",
      "intents": [
        "edit vertical grid",
        "edit",
        "change",
        "grid guide",
        "reference lines",
        "vertical grid",
        "x reference lines"
      ],
      "lifecycle": "Mutable resource",
      "resources": {
        "prerequisites": [
          "existing vertical grid",
          "compatible scale or encoding context"
        ],
        "owns": [],
        "idOptions": []
      },
      "authoringRoles": [
        "H3"
      ],
      "wraps": [],
      "editableVia": [
        "editVerticalGrid"
      ],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [
        {
          "path": "count",
          "unit": "count"
        },
        {
          "path": "lineWidth",
          "unit": "logical-pixel"
        }
      ],
      "inference": [
        {
          "input": "values",
          "strategy": "documented-auto"
        }
      ],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "existing vertical grid",
          "compatible scale or encoding context"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "count",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "values",
          "required": false,
          "type": "\"auto\" | readonly number[] | undefined"
        },
        {
          "name": "color",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "lineWidth",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "strokeDash",
          "required": false,
          "type": "readonly number[] | undefined"
        }
      ],
      "callPatterns": [
        "editVerticalGrid({ count?, values?, color?, lineWidth?, strokeDash? })"
      ],
      "snippet": "program.editVerticalGrid({ count: 5 })",
      "errors": [],
      "route": "/reference/actions/guides/#editverticalgrid"
    },
    {
      "schemaVersion": 3,
      "name": "editGrid",
      "layer": "user-facing",
      "domain": "grid",
      "summary": "Edits grid, including settings for Cartesian reference lines.",
      "signature": "editGrid(options: EditGridDirectionsOptions): ChartProgram;",
      "intents": [
        "edit grid",
        "edit",
        "change",
        "grid guide",
        "reference lines",
        "grid",
        "Cartesian reference lines"
      ],
      "lifecycle": "Mutable resource",
      "resources": {
        "prerequisites": [
          "existing grid",
          "compatible scale or encoding context"
        ],
        "owns": [],
        "idOptions": []
      },
      "authoringRoles": [
        "H3"
      ],
      "wraps": [
        "editHorizontalGrid",
        "editVerticalGrid"
      ],
      "editableVia": [
        "editGrid"
      ],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [],
      "inference": [],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "existing grid",
          "compatible scale or encoding context"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "horizontal",
          "required": false,
          "type": "EditGridOptions | undefined"
        },
        {
          "name": "vertical",
          "required": false,
          "type": "EditGridOptions | undefined"
        },
        {
          "name": "theta",
          "required": false,
          "type": "EditPolarGridOptions | undefined"
        },
        {
          "name": "radial",
          "required": false,
          "type": "EditPolarGridOptions | undefined"
        }
      ],
      "callPatterns": [
        "editGrid({ horizontal?, vertical?, theta?, radial? })"
      ],
      "snippet": "program.editGrid({ horizontal: { color: \"#dddddd\" } })",
      "errors": [],
      "route": "/reference/actions/guides/#editgrid"
    },
    {
      "schemaVersion": 3,
      "name": "removeGrid",
      "layer": "user-facing",
      "domain": "grid",
      "summary": "Removes grid while preserving unrelated chart resources.",
      "signature": "removeGrid(options?: RemoveGridOptions): ChartProgram;",
      "intents": [
        "remove grid",
        "remove",
        "delete",
        "grid guide",
        "reference lines",
        "grid",
        "Cartesian reference lines"
      ],
      "lifecycle": "Mutable resource",
      "resources": {
        "prerequisites": [
          "existing grid",
          "compatible scale or encoding context"
        ],
        "owns": [],
        "idOptions": []
      },
      "authoringRoles": [
        "H3"
      ],
      "wraps": [
        "editSemantic",
        "editGraphics"
      ],
      "editableVia": [],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [],
      "inference": [],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "existing grid",
          "compatible scale or encoding context"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "horizontal",
          "required": false,
          "type": "boolean | undefined"
        },
        {
          "name": "vertical",
          "required": false,
          "type": "boolean | undefined"
        },
        {
          "name": "theta",
          "required": false,
          "type": "boolean | undefined"
        },
        {
          "name": "radial",
          "required": false,
          "type": "boolean | undefined"
        }
      ],
      "callPatterns": [
        "removeGrid({ horizontal?, vertical?, theta?, radial? })"
      ],
      "snippet": "program.removeGrid({})",
      "errors": [],
      "route": "/reference/actions/guides/#removegrid"
    },
    {
      "schemaVersion": 3,
      "name": "createLegend",
      "layer": "user-facing",
      "domain": "legend_and_title",
      "summary": "Create categorical, point-size, continuous-color gradient, discretized-color interval, or field-opacity sample legends.",
      "signature": "createLegend(options?: LegendOptions): ChartProgram;",
      "intents": [
        "create legend",
        "create",
        "add",
        "legend or title",
        "chart annotation",
        "legend",
        "encoding key"
      ],
      "lifecycle": "Mutable resource",
      "resources": {
        "prerequisites": [
          "compatible scale or encoding context"
        ],
        "owns": [
          "legend"
        ],
        "idOptions": [
          "target"
        ]
      },
      "authoringRoles": [
        "H3"
      ],
      "wraps": [],
      "editableVia": [
        "editLegend"
      ],
      "supports": {
        "entryPoints": [
          "default",
          "basic"
        ]
      },
      "units": [
        {
          "path": "columns",
          "unit": "count"
        },
        {
          "path": "offset",
          "unit": "logical-pixel"
        },
        {
          "path": "count",
          "unit": "count"
        }
      ],
      "inference": [
        {
          "input": "target",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "omitted optional options",
          "strategy": "documented-default"
        }
      ],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "compatible scale or encoding context"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "layout",
          "required": false,
          "type": "\"edge\" | \"legacy-bottom\" | undefined"
        },
        {
          "name": "order",
          "required": false,
          "type": "LegendOrder | undefined"
        },
        {
          "name": "target",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "channels",
          "required": false,
          "type": "readonly (\"color\" | \"opacity\" | \"shape\" | \"size\" | \"stroke\" | \"strokeDash\" | \"strokeWidth\")[] | undefined"
        },
        {
          "name": "position",
          "required": false,
          "type": "\"bottom\" | \"left\" | \"right\" | \"top\" | undefined"
        },
        {
          "name": "align",
          "required": false,
          "type": "\"center\" | \"left\" | \"right\" | undefined"
        },
        {
          "name": "direction",
          "required": false,
          "type": "\"horizontal\" | \"vertical\" | undefined"
        },
        {
          "name": "columns",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "offset",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "titlePosition",
          "required": false,
          "type": "\"left\" | \"top\" | undefined"
        },
        {
          "name": "title",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "values",
          "required": false,
          "type": "readonly number[] | undefined"
        },
        {
          "name": "count",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "gradient",
          "required": false,
          "type": "{ length?: number | undefined; thickness?: number | undefined; } | undefined"
        },
        {
          "name": "symbol",
          "required": false,
          "type": "LegendSymbolRecipe | undefined"
        },
        {
          "name": "labels",
          "required": false,
          "type": "LegendTextOptions | undefined"
        },
        {
          "name": "titleStyle",
          "required": false,
          "type": "LegendTitleStyleOptions | undefined"
        },
        {
          "name": "itemGap",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "border",
          "required": false,
          "type": "boolean | LegendBorderOptions | undefined"
        }
      ],
      "callPatterns": [
        "createLegend({ target?, layout?, order?, channels?, position?, align?, direction?, columns? })"
      ],
      "snippet": "program.createLegend({})",
      "errors": [],
      "route": "/reference/actions/guides/#createlegend"
    },
    {
      "schemaVersion": 3,
      "name": "editLegend",
      "layer": "user-facing",
      "domain": "legend_and_title",
      "summary": "Partially edit one existing legend.",
      "signature": "editLegend(options: EditLegendOptions): ChartProgram;",
      "intents": [
        "edit legend",
        "edit",
        "change",
        "legend or title",
        "chart annotation",
        "legend",
        "encoding key"
      ],
      "lifecycle": "Mutable resource",
      "resources": {
        "prerequisites": [
          "existing legend",
          "compatible scale or encoding context"
        ],
        "owns": [],
        "idOptions": [
          "target"
        ]
      },
      "authoringRoles": [
        "H3"
      ],
      "wraps": [
        "createGraphics",
        "editSemantic"
      ],
      "editableVia": [
        "editLegend"
      ],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [
        {
          "path": "columns",
          "unit": "count"
        },
        {
          "path": "offset",
          "unit": "logical-pixel"
        },
        {
          "path": "count",
          "unit": "count"
        }
      ],
      "inference": [
        {
          "input": "values",
          "strategy": "documented-auto"
        },
        {
          "input": "target",
          "strategy": "explicit-current-unique-or-error"
        }
      ],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "existing legend",
          "compatible scale or encoding context"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "channels",
          "required": false,
          "type": "readonly (\"color\" | \"opacity\" | \"shape\" | \"size\" | \"stroke\" | \"strokeDash\" | \"strokeWidth\")[] | undefined"
        },
        {
          "name": "title",
          "required": false,
          "type": "string | false | undefined"
        },
        {
          "name": "values",
          "required": false,
          "type": "\"auto\" | readonly number[] | undefined"
        },
        {
          "name": "layout",
          "required": false,
          "type": "\"edge\" | \"legacy-bottom\" | undefined"
        },
        {
          "name": "order",
          "required": false,
          "type": "LegendOrder | undefined"
        },
        {
          "name": "target",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "position",
          "required": false,
          "type": "\"bottom\" | \"left\" | \"right\" | \"top\" | undefined"
        },
        {
          "name": "align",
          "required": false,
          "type": "\"center\" | \"left\" | \"right\" | undefined"
        },
        {
          "name": "direction",
          "required": false,
          "type": "\"horizontal\" | \"vertical\" | undefined"
        },
        {
          "name": "columns",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "offset",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "titlePosition",
          "required": false,
          "type": "\"left\" | \"top\" | undefined"
        },
        {
          "name": "count",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "gradient",
          "required": false,
          "type": "{ length?: number | undefined; thickness?: number | undefined; } | undefined"
        },
        {
          "name": "symbol",
          "required": false,
          "type": "LegendSymbolRecipe | undefined"
        },
        {
          "name": "labels",
          "required": false,
          "type": "LegendTextOptions | undefined"
        },
        {
          "name": "titleStyle",
          "required": false,
          "type": "LegendTitleStyleOptions | undefined"
        },
        {
          "name": "itemGap",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "border",
          "required": false,
          "type": "boolean | LegendBorderOptions | undefined"
        }
      ],
      "callPatterns": [
        "editLegend({ target?, channels?, title?, values?, layout?, order?, position?, align? })"
      ],
      "snippet": "program.editLegend({ channels: [\"color\", \"size\"], count: 3 })",
      "errors": [],
      "route": "/reference/actions/guides/#editlegend"
    },
    {
      "schemaVersion": 3,
      "name": "editLegendBlock",
      "layer": "user-facing",
      "domain": "legend_and_title",
      "summary": "Edit one logical legend block without changing sibling blocks on the same mark.",
      "signature": "editLegendBlock(options: EditLegendBlockOptions): ChartProgram;",
      "intents": [
        "edit legend block",
        "edit",
        "change",
        "legend or title",
        "chart annotation",
        "legend block",
        "one encoded legend channel group"
      ],
      "lifecycle": "Mutable resource",
      "resources": {
        "prerequisites": [
          "existing legend block",
          "compatible scale or encoding context"
        ],
        "owns": [],
        "idOptions": [
          "target"
        ]
      },
      "authoringRoles": [
        "H3"
      ],
      "wraps": [
        "editSemantic"
      ],
      "editableVia": [
        "editLegendBlock"
      ],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [
        {
          "path": "count",
          "unit": "count"
        }
      ],
      "inference": [
        {
          "input": "target",
          "strategy": "explicit"
        },
        {
          "input": "values",
          "strategy": "documented-auto"
        },
        {
          "input": "labelMap",
          "strategy": "documented-auto"
        }
      ],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "existing legend block",
          "compatible scale or encoding context"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "target",
          "required": true,
          "type": "string"
        },
        {
          "name": "channel",
          "required": true,
          "type": "\"color\" | \"opacity\" | \"shape\" | \"size\" | \"stroke\" | \"strokeDash\" | \"strokeWidth\""
        },
        {
          "name": "title",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "values",
          "required": false,
          "type": "\"auto\" | readonly [number, ...number[]] | undefined"
        },
        {
          "name": "count",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "order",
          "required": false,
          "type": "readonly CategoryValue[] | undefined"
        },
        {
          "name": "gap",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "text",
          "required": false,
          "type": "LegendBlockTextPatch | undefined"
        },
        {
          "name": "symbol",
          "required": false,
          "type": "LegendBlockSymbolPatch | undefined"
        },
        {
          "name": "labelMap",
          "required": false,
          "type": "\"auto\" | DisplayLabelMap | undefined"
        }
      ],
      "callPatterns": [
        "editLegendBlock({ target, channel, title?, values?, count?, order?, gap?, text? })",
        "editLegendBlock({ target, channel, symbol? })"
      ],
      "snippet": "program.editLegendBlock({ target: \"points\", channel: \"size\", title: \"Magnitude\" })",
      "errors": [],
      "route": "/reference/actions/guides/#editlegendblock"
    },
    {
      "schemaVersion": 3,
      "name": "editLegendLayout",
      "layer": "user-facing",
      "domain": "legend_and_title",
      "summary": "Edits one legend's position, alignment, direction, columns, title placement, and item spacing.",
      "signature": "editLegendLayout(options: EditLegendLayoutOptions): ChartProgram;",
      "intents": [
        "edit legend layout",
        "edit",
        "change",
        "legend or title",
        "chart annotation",
        "legend layout",
        "legend position and flow"
      ],
      "lifecycle": "Mutable resource",
      "resources": {
        "prerequisites": [
          "existing legend layout",
          "compatible scale or encoding context"
        ],
        "owns": [],
        "idOptions": [
          "target"
        ]
      },
      "authoringRoles": [
        "H3"
      ],
      "wraps": [
        "editLegend"
      ],
      "editableVia": [
        "editLegendLayout"
      ],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [
        {
          "path": "columns",
          "unit": "count"
        },
        {
          "path": "offset",
          "unit": "logical-pixel"
        }
      ],
      "inference": [
        {
          "input": "target",
          "strategy": "explicit-current-unique-or-error"
        }
      ],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "existing legend layout",
          "compatible scale or encoding context"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "target",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "layout",
          "required": false,
          "type": "\"edge\" | \"legacy-bottom\" | undefined"
        },
        {
          "name": "position",
          "required": false,
          "type": "\"bottom\" | \"left\" | \"right\" | \"top\" | undefined"
        },
        {
          "name": "align",
          "required": false,
          "type": "\"center\" | \"left\" | \"right\" | undefined"
        },
        {
          "name": "direction",
          "required": false,
          "type": "\"horizontal\" | \"vertical\" | undefined"
        },
        {
          "name": "columns",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "offset",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "titlePosition",
          "required": false,
          "type": "\"left\" | \"top\" | undefined"
        },
        {
          "name": "itemGap",
          "required": false,
          "type": "number | undefined"
        }
      ],
      "callPatterns": [
        "editLegendLayout({ target?, layout?, position?, align?, direction?, columns?, offset?, titlePosition? })"
      ],
      "snippet": "program.editLegendLayout({ layout: \"edge\" })",
      "errors": [],
      "route": "/reference/actions/guides/#editlegendlayout"
    },
    {
      "schemaVersion": 3,
      "name": "editLegendLabels",
      "layer": "user-facing",
      "domain": "legend_and_title",
      "summary": "Edits the text style of one legend's item labels.",
      "signature": "editLegendLabels(options: EditLegendLabelsOptions): ChartProgram;",
      "intents": [
        "edit legend labels",
        "edit",
        "change",
        "legend or title",
        "chart annotation",
        "legend labels",
        "legend text style"
      ],
      "lifecycle": "Mutable resource",
      "resources": {
        "prerequisites": [
          "existing legend labels",
          "compatible scale or encoding context"
        ],
        "owns": [],
        "idOptions": [
          "target"
        ]
      },
      "authoringRoles": [
        "H3"
      ],
      "wraps": [
        "editLegend"
      ],
      "editableVia": [
        "editLegendLabels"
      ],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [
        {
          "path": "offset",
          "unit": "logical-pixel"
        },
        {
          "path": "fontSize",
          "unit": "logical-pixel"
        }
      ],
      "inference": [
        {
          "input": "target",
          "strategy": "explicit-current-unique-or-error"
        }
      ],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "existing legend labels",
          "compatible scale or encoding context"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "target",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "offset",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "color",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "fontSize",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "fontFamily",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "fontWeight",
          "required": false,
          "type": "string | number | undefined"
        },
        {
          "name": "format",
          "required": false,
          "type": "ValueFormat | undefined"
        }
      ],
      "callPatterns": [
        "editLegendLabels({ target?, offset?, color?, fontSize?, fontFamily?, fontWeight?, format? })"
      ],
      "snippet": "program.editLegendLabels({ offset: 1 })",
      "errors": [],
      "route": "/reference/actions/guides/#editlegendlabels"
    },
    {
      "schemaVersion": 3,
      "name": "editLegendTitle",
      "layer": "user-facing",
      "domain": "legend_and_title",
      "summary": "Edits one legend's title text and title style.",
      "signature": "editLegendTitle(options: EditLegendTitleOptions): ChartProgram;",
      "intents": [
        "edit legend title",
        "edit",
        "change",
        "legend or title",
        "chart annotation",
        "legend title",
        "legend heading"
      ],
      "lifecycle": "Mutable resource",
      "resources": {
        "prerequisites": [
          "existing legend title",
          "compatible scale or encoding context"
        ],
        "owns": [],
        "idOptions": [
          "target"
        ]
      },
      "authoringRoles": [
        "H3"
      ],
      "wraps": [
        "editLegend"
      ],
      "editableVia": [
        "editLegendTitle"
      ],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [
        {
          "path": "fontSize",
          "unit": "logical-pixel"
        }
      ],
      "inference": [
        {
          "input": "target",
          "strategy": "explicit-current-unique-or-error"
        }
      ],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "existing legend title",
          "compatible scale or encoding context"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "target",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "title",
          "required": false,
          "type": "string | false | undefined"
        },
        {
          "name": "color",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "fontSize",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "fontFamily",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "fontWeight",
          "required": false,
          "type": "string | number | undefined"
        }
      ],
      "callPatterns": [
        "editLegendTitle({ target?, title?, color?, fontSize?, fontFamily?, fontWeight? })"
      ],
      "snippet": "program.editLegendTitle({ title: \"title\" })",
      "errors": [],
      "route": "/reference/actions/guides/#editlegendtitle"
    },
    {
      "schemaVersion": 3,
      "name": "editLegendSymbols",
      "layer": "user-facing",
      "domain": "legend_and_title",
      "summary": "Edits one legend's discrete symbols or continuous gradient.",
      "signature": "editLegendSymbols(options: EditLegendSymbolsOptions): ChartProgram;",
      "intents": [
        "edit legend symbols",
        "edit",
        "change",
        "legend or title",
        "chart annotation",
        "legend symbols",
        "legend glyphs"
      ],
      "lifecycle": "Mutable resource",
      "resources": {
        "prerequisites": [
          "existing legend symbols",
          "compatible scale or encoding context"
        ],
        "owns": [],
        "idOptions": [
          "target"
        ]
      },
      "authoringRoles": [
        "H3"
      ],
      "wraps": [
        "editLegend"
      ],
      "editableVia": [
        "editLegendSymbols"
      ],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [
        {
          "path": "count",
          "unit": "count"
        }
      ],
      "inference": [
        {
          "input": "target",
          "strategy": "explicit-current-unique-or-error"
        }
      ],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "existing legend symbols",
          "compatible scale or encoding context"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "target",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "symbol",
          "required": false,
          "type": "LegendSymbolRecipe | undefined"
        },
        {
          "name": "count",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "gradient",
          "required": false,
          "type": "{ length?: number | undefined; thickness?: number | undefined; } | undefined"
        }
      ],
      "callPatterns": [
        "editLegendSymbols({ target?, symbol?, count?, gradient? })"
      ],
      "snippet": "program.editLegendSymbols({ count: 5 })",
      "errors": [],
      "route": "/reference/actions/guides/#editlegendsymbols"
    },
    {
      "schemaVersion": 3,
      "name": "editLegendBorder",
      "layer": "user-facing",
      "domain": "legend_and_title",
      "summary": "Adds, removes, or styles the border around one legend.",
      "signature": "editLegendBorder(options: EditLegendBorderOptions): ChartProgram;",
      "intents": [
        "edit legend border",
        "edit",
        "change",
        "legend or title",
        "chart annotation",
        "legend border",
        "legend frame"
      ],
      "lifecycle": "Mutable resource",
      "resources": {
        "prerequisites": [
          "existing legend border",
          "compatible scale or encoding context"
        ],
        "owns": [],
        "idOptions": [
          "target"
        ]
      },
      "authoringRoles": [
        "H3"
      ],
      "wraps": [
        "editLegend"
      ],
      "editableVia": [
        "editLegendBorder"
      ],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [],
      "inference": [
        {
          "input": "target",
          "strategy": "explicit-current-unique-or-error"
        }
      ],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "existing legend border",
          "compatible scale or encoding context"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "target",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "border",
          "required": true,
          "type": "boolean | LegendBorderOptions"
        }
      ],
      "callPatterns": [
        "editLegendBorder({ border, target? })"
      ],
      "snippet": "program.editLegendBorder({ border: true })",
      "errors": [],
      "route": "/reference/actions/guides/#editlegendborder"
    },
    {
      "schemaVersion": 3,
      "name": "createGuides",
      "layer": "user-facing",
      "domain": "legend_and_title",
      "summary": "Create applicable Cartesian or Polar axes and grids plus supported legends.",
      "signature": "createGuides(options?: CreateGuidesOptions): ChartProgram;",
      "intents": [
        "create guides",
        "create",
        "add",
        "legend or title",
        "chart annotation",
        "axes and legends",
        "automatic guides"
      ],
      "lifecycle": "Aggregate create-only",
      "resources": {
        "prerequisites": [
          "compatible scale or encoding context"
        ],
        "owns": [
          "axes and legends"
        ],
        "idOptions": []
      },
      "authoringRoles": [
        "H3"
      ],
      "wraps": [
        "createAxes",
        "createGrid",
        "createLegend"
      ],
      "editableVia": [],
      "supports": {
        "entryPoints": [
          "default",
          "basic"
        ]
      },
      "units": [],
      "inference": [
        {
          "input": "omitted optional options",
          "strategy": "documented-default"
        }
      ],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "compatible scale or encoding context"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "axes",
          "required": false,
          "type": "false | CreateAxesOptions | undefined"
        },
        {
          "name": "grid",
          "required": false,
          "type": "false | CreateGridOptions | undefined"
        },
        {
          "name": "legend",
          "required": false,
          "type": "false | LegendOptions | undefined"
        }
      ],
      "callPatterns": [
        "createGuides({ axes?, grid?, legend? })"
      ],
      "snippet": "program.createGuides({})",
      "errors": [],
      "route": "/reference/actions/guides/#createguides"
    },
    {
      "schemaVersion": 3,
      "name": "removeLegend",
      "layer": "user-facing",
      "domain": "legend_and_title",
      "summary": "Remove every legend block owned by one mark when channels is omitted, or remove selected channels while preserving mark encodings, scales, and unrelated blocks.",
      "signature": "removeLegend(options?: RemoveLegendOptions): ChartProgram;",
      "intents": [
        "remove legend",
        "remove",
        "delete",
        "legend or title",
        "chart annotation",
        "legend",
        "encoding key"
      ],
      "lifecycle": "Mutable resource",
      "resources": {
        "prerequisites": [
          "existing legend",
          "compatible scale or encoding context"
        ],
        "owns": [],
        "idOptions": [
          "target"
        ]
      },
      "authoringRoles": [
        "H3"
      ],
      "wraps": [
        "editSemantic",
        "editGraphics"
      ],
      "editableVia": [],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [],
      "inference": [
        {
          "input": "target",
          "strategy": "explicit-current-unique-or-error"
        }
      ],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "existing legend",
          "compatible scale or encoding context"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "target",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "channels",
          "required": false,
          "type": "readonly (\"color\" | \"opacity\" | \"shape\" | \"size\" | \"stroke\" | \"strokeDash\" | \"strokeWidth\")[] | undefined"
        }
      ],
      "callPatterns": [
        "removeLegend({ target?, channels? })"
      ],
      "snippet": "program.removeLegend({})",
      "errors": [],
      "route": "/reference/actions/guides/#removelegend"
    },
    {
      "schemaVersion": 3,
      "name": "createTitle",
      "layer": "user-facing",
      "domain": "legend_and_title",
      "summary": "Create a chart title and optional subtitle.",
      "signature": "createTitle(options: TitleOptions): ChartProgram;",
      "intents": [
        "create title",
        "create",
        "add",
        "legend or title",
        "chart annotation",
        "chart title",
        "title and subtitle"
      ],
      "lifecycle": "Mutable resource",
      "resources": {
        "prerequisites": [],
        "owns": [
          "chart title"
        ],
        "idOptions": []
      },
      "authoringRoles": [
        "H3"
      ],
      "wraps": [
        "editSemantic"
      ],
      "editableVia": [
        "editTitle"
      ],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [
        {
          "path": "offset",
          "unit": "logical-pixel"
        },
        {
          "path": "maxWidth",
          "unit": "logical-pixel"
        },
        {
          "path": "lineHeight",
          "unit": "logical-pixel"
        }
      ],
      "inference": [
        {
          "input": "omitted optional options",
          "strategy": "documented-default"
        }
      ],
      "completionRequirements": {
        "state": "contextual",
        "requires": [],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "text",
          "required": true,
          "type": "string"
        },
        {
          "name": "subtitle",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "position",
          "required": false,
          "type": "\"bottom\" | \"left\" | \"right\" | \"top\" | undefined"
        },
        {
          "name": "align",
          "required": false,
          "type": "\"center\" | \"left\" | \"right\" | undefined"
        },
        {
          "name": "offset",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "gap",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "maxWidth",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "wrap",
          "required": false,
          "type": "\"character\" | \"word\" | undefined"
        },
        {
          "name": "lineHeight",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "titleStyle",
          "required": false,
          "type": "TitleTextStyleOptions | undefined"
        },
        {
          "name": "subtitleStyle",
          "required": false,
          "type": "TitleTextStyleOptions | undefined"
        }
      ],
      "callPatterns": [
        "createTitle({ text, subtitle?, position?, align?, offset?, gap?, maxWidth?, wrap? })"
      ],
      "snippet": "program.createTitle({ text: \"Chart title\" })",
      "errors": [],
      "route": "/reference/actions/guides/#createtitle"
    },
    {
      "schemaVersion": 3,
      "name": "editTitle",
      "layer": "user-facing",
      "domain": "legend_and_title",
      "summary": "Partially edit the existing title.",
      "signature": "editTitle(options: EditTitleOptions): ChartProgram;",
      "intents": [
        "edit title",
        "edit",
        "change",
        "legend or title",
        "chart annotation",
        "chart title",
        "title and subtitle"
      ],
      "lifecycle": "Mutable resource",
      "resources": {
        "prerequisites": [
          "existing chart title",
          "compatible scale or encoding context"
        ],
        "owns": [],
        "idOptions": []
      },
      "authoringRoles": [
        "H3"
      ],
      "wraps": [
        "editSemantic"
      ],
      "editableVia": [
        "editTitle"
      ],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [
        {
          "path": "offset",
          "unit": "logical-pixel"
        },
        {
          "path": "maxWidth",
          "unit": "logical-pixel"
        },
        {
          "path": "lineHeight",
          "unit": "logical-pixel"
        }
      ],
      "inference": [],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "existing chart title",
          "compatible scale or encoding context"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "text",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "subtitle",
          "required": false,
          "type": "string | false | undefined"
        },
        {
          "name": "position",
          "required": false,
          "type": "\"bottom\" | \"left\" | \"right\" | \"top\" | undefined"
        },
        {
          "name": "align",
          "required": false,
          "type": "\"center\" | \"left\" | \"right\" | undefined"
        },
        {
          "name": "offset",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "gap",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "maxWidth",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "wrap",
          "required": false,
          "type": "\"character\" | \"word\" | undefined"
        },
        {
          "name": "lineHeight",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "titleStyle",
          "required": false,
          "type": "TitleTextStyleOptions | undefined"
        },
        {
          "name": "subtitleStyle",
          "required": false,
          "type": "TitleTextStyleOptions | undefined"
        }
      ],
      "callPatterns": [
        "editTitle({ text?, subtitle?, position?, align?, offset?, gap?, maxWidth?, wrap? })"
      ],
      "snippet": "program.editTitle({ text: \"Chart title\" })",
      "errors": [],
      "route": "/reference/actions/guides/#edittitle"
    },
    {
      "schemaVersion": 3,
      "name": "removeTitle",
      "layer": "user-facing",
      "domain": "legend_and_title",
      "summary": "Remove the complete chart title and subtitle resource.",
      "signature": "removeTitle(): ChartProgram;",
      "intents": [
        "remove title",
        "remove",
        "delete",
        "legend or title",
        "chart annotation",
        "chart title",
        "title and subtitle"
      ],
      "lifecycle": "Mutable resource",
      "resources": {
        "prerequisites": [
          "existing chart title",
          "compatible scale or encoding context"
        ],
        "owns": [],
        "idOptions": []
      },
      "authoringRoles": [
        "H3"
      ],
      "wraps": [
        "editSemantic",
        "editGraphics"
      ],
      "editableVia": [],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [],
      "inference": [],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "existing chart title",
          "compatible scale or encoding context"
        ],
        "allowsEmpty": false
      },
      "options": [],
      "callPatterns": [
        "removeTitle()"
      ],
      "snippet": "program.removeTitle()",
      "errors": [],
      "route": "/reference/actions/guides/#removetitle"
    },
    {
      "schemaVersion": 3,
      "name": "createCoordinate",
      "layer": "user-facing",
      "domain": "core",
      "summary": "Creates coordinate system for Cartesian or polar space.",
      "signature": "createCoordinate(options?: CreateCoordinateOptions): ChartProgram;",
      "intents": [
        "create coordinate",
        "create",
        "add",
        "chart setup",
        "data and scales",
        "coordinate system",
        "Cartesian or polar space"
      ],
      "lifecycle": "Mutable resource",
      "resources": {
        "prerequisites": [],
        "owns": [
          "coordinate system"
        ],
        "idOptions": [
          "id"
        ]
      },
      "authoringRoles": [
        "H2"
      ],
      "wraps": [
        "editSemantic"
      ],
      "editableVia": [
        "editCoordinate",
        "removeCoordinate"
      ],
      "supports": {
        "entryPoints": [
          "default",
          "basic"
        ]
      },
      "units": [],
      "inference": [
        {
          "input": "omitted optional options",
          "strategy": "documented-default"
        }
      ],
      "completionRequirements": {
        "state": "contextual",
        "requires": [],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "id",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "type",
          "required": false,
          "type": "\"cartesian\" | \"parallel\" | \"polar\" | undefined"
        },
        {
          "name": "layers",
          "required": false,
          "type": "readonly string[] | undefined"
        }
      ],
      "callPatterns": [
        "createCoordinate({ id?, type?, layers? })"
      ],
      "snippet": "program.createCoordinate({})",
      "errors": [],
      "route": "/reference/actions/charts-data/#createcoordinate"
    },
    {
      "schemaVersion": 3,
      "name": "editCoordinate",
      "layer": "user-facing",
      "domain": "core",
      "summary": "Edits coordinate system, including settings for Cartesian or polar space.",
      "signature": "editCoordinate(options: EditCoordinateOptions): ChartProgram;",
      "intents": [
        "edit coordinate",
        "edit",
        "change",
        "chart setup",
        "data and scales",
        "coordinate system",
        "Cartesian or polar space"
      ],
      "lifecycle": "Mutable resource",
      "resources": {
        "prerequisites": [
          "existing coordinate system"
        ],
        "owns": [],
        "idOptions": [
          "target"
        ]
      },
      "authoringRoles": [
        "H2"
      ],
      "wraps": [
        "editSemantic"
      ],
      "editableVia": [
        "editCoordinate"
      ],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [],
      "inference": [
        {
          "input": "target",
          "strategy": "explicit"
        }
      ],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "existing coordinate system"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "target",
          "required": true,
          "type": "string"
        },
        {
          "name": "aspect",
          "required": false,
          "type": "CoordinateAspect | undefined"
        },
        {
          "name": "polarFrame",
          "required": false,
          "type": "PolarFrameOptions | undefined"
        }
      ],
      "callPatterns": [
        "editCoordinate({ target, aspect: { mode: \"frame\" | \"data\", ratio, alignX?, alignY? } | \"auto\" })",
        "editCoordinate({ target, polarFrame: { center?, radius? } | \"auto\" })"
      ],
      "snippet": "program.editCoordinate({ target: \"polar\", polarFrame: { center: { x: 0.25, y: 0.5 }, radius: { unit: \"fraction\", value: 0.8 } } })",
      "errors": [],
      "route": "/reference/actions/charts-data/#editcoordinate"
    },
    {
      "schemaVersion": 3,
      "name": "createScale",
      "layer": "user-facing",
      "domain": "core",
      "summary": "Creates a named scale that maps a semantic domain to a graphical range.",
      "signature": "createScale(options: CreateScaleOptions): ChartProgram;",
      "intents": [
        "create scale",
        "create",
        "add",
        "chart setup",
        "data and scales",
        "scale",
        "domain-to-range mapping"
      ],
      "lifecycle": "Mutable resource",
      "resources": {
        "prerequisites": [],
        "owns": [
          "scale"
        ],
        "idOptions": [
          "id"
        ]
      },
      "authoringRoles": [
        "H2"
      ],
      "wraps": [
        "editSemantic"
      ],
      "editableVia": [
        "editScale",
        "removeScale"
      ],
      "supports": {
        "entryPoints": [
          "default",
          "basic"
        ]
      },
      "units": [
        {
          "path": "paddingInner",
          "unit": "band-fraction"
        },
        {
          "path": "paddingOuter",
          "unit": "band-fraction"
        },
        {
          "path": "padding",
          "unit": "band-fraction"
        },
        {
          "path": "align",
          "unit": "ratio"
        }
      ],
      "inference": [
        {
          "input": "domain",
          "strategy": "documented-auto"
        },
        {
          "input": "midpoint",
          "strategy": "documented-auto"
        },
        {
          "input": "omitted optional options",
          "strategy": "documented-default"
        }
      ],
      "completionRequirements": {
        "state": "contextual",
        "requires": [],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "radialMapping",
          "required": false,
          "type": "RadialMapping | undefined"
        },
        {
          "name": "id",
          "required": true,
          "type": "string"
        },
        {
          "name": "type",
          "required": false,
          "type": "ScaleType | undefined"
        },
        {
          "name": "domain",
          "required": false,
          "type": "\"auto\" | readonly unknown[] | undefined"
        },
        {
          "name": "emptyDomain",
          "required": false,
          "type": "\"preserve\" | \"require-explicit\" | undefined"
        },
        {
          "name": "range",
          "required": false,
          "type": "ScaleRange | undefined"
        },
        {
          "name": "nice",
          "required": false,
          "type": "boolean | undefined"
        },
        {
          "name": "zero",
          "required": false,
          "type": "boolean | undefined"
        },
        {
          "name": "clamp",
          "required": false,
          "type": "boolean | undefined"
        },
        {
          "name": "reverse",
          "required": false,
          "type": "boolean | undefined"
        },
        {
          "name": "base",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "exponent",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "constant",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "paddingInner",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "paddingOuter",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "padding",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "align",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "palette",
          "required": false,
          "type": "Palette | undefined"
        },
        {
          "name": "interpolate",
          "required": false,
          "type": "ContinuousColorInterpolation | undefined"
        },
        {
          "name": "midpoint",
          "required": false,
          "type": "number | \"auto\" | undefined"
        },
        {
          "name": "unknown",
          "required": false,
          "type": "unknown"
        }
      ],
      "callPatterns": [
        "createScale({ id, radialMapping?, type?, domain?, emptyDomain?, range?, nice?, zero? })"
      ],
      "snippet": "program.createScale({ id: \"scale-1\" })",
      "errors": [],
      "route": "/reference/actions/charts-data/#createscale"
    },
    {
      "schemaVersion": 3,
      "name": "editScale",
      "layer": "user-facing",
      "domain": "core",
      "summary": "Partially edits a named or uniquely resolvable scale and rematerializes its consumers.",
      "signature": "editScale(options: EditScaleOptions): ChartProgram;",
      "intents": [
        "edit scale",
        "edit",
        "change",
        "chart setup",
        "data and scales",
        "scale",
        "domain-to-range mapping"
      ],
      "lifecycle": "Mutable resource",
      "resources": {
        "prerequisites": [
          "existing scale"
        ],
        "owns": [],
        "idOptions": [
          "id"
        ]
      },
      "authoringRoles": [
        "H2"
      ],
      "wraps": [
        "editSemantic"
      ],
      "editableVia": [
        "editScale"
      ],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [
        {
          "path": "paddingInner",
          "unit": "band-fraction"
        },
        {
          "path": "paddingOuter",
          "unit": "band-fraction"
        },
        {
          "path": "padding",
          "unit": "band-fraction"
        },
        {
          "path": "align",
          "unit": "ratio"
        }
      ],
      "inference": [
        {
          "input": "domain",
          "strategy": "documented-auto"
        },
        {
          "input": "midpoint",
          "strategy": "documented-auto"
        }
      ],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "existing scale"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "radialMapping",
          "required": false,
          "type": "RadialMapping | undefined"
        },
        {
          "name": "id",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "type",
          "required": false,
          "type": "ScaleType | undefined"
        },
        {
          "name": "domain",
          "required": false,
          "type": "\"auto\" | readonly unknown[] | undefined"
        },
        {
          "name": "emptyDomain",
          "required": false,
          "type": "\"preserve\" | \"require-explicit\" | undefined"
        },
        {
          "name": "range",
          "required": false,
          "type": "ScaleRange | undefined"
        },
        {
          "name": "nice",
          "required": false,
          "type": "boolean | undefined"
        },
        {
          "name": "zero",
          "required": false,
          "type": "boolean | undefined"
        },
        {
          "name": "clamp",
          "required": false,
          "type": "boolean | undefined"
        },
        {
          "name": "reverse",
          "required": false,
          "type": "boolean | undefined"
        },
        {
          "name": "base",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "exponent",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "constant",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "paddingInner",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "paddingOuter",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "padding",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "align",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "palette",
          "required": false,
          "type": "Palette | undefined"
        },
        {
          "name": "interpolate",
          "required": false,
          "type": "ContinuousColorInterpolation | undefined"
        },
        {
          "name": "midpoint",
          "required": false,
          "type": "number | \"auto\" | undefined"
        },
        {
          "name": "unknown",
          "required": false,
          "type": "unknown"
        }
      ],
      "callPatterns": [
        "editScale({ id?, radialMapping?, type?, domain?, emptyDomain?, range?, nice?, zero? })"
      ],
      "snippet": "program.editScale({ type: \"linear\" })",
      "errors": [],
      "route": "/reference/actions/charts-data/#editscale"
    },
    {
      "schemaVersion": 3,
      "name": "editXScale",
      "layer": "user-facing",
      "domain": "core",
      "summary": "Edits x scale, including settings for horizontal position mapping.",
      "signature": "editXScale(options: EditXScaleOptions): ChartProgram;",
      "intents": [
        "edit x scale",
        "edit",
        "change",
        "chart setup",
        "data and scales",
        "x scale",
        "horizontal position mapping"
      ],
      "lifecycle": "Mutable resource",
      "resources": {
        "prerequisites": [
          "existing x scale"
        ],
        "owns": [],
        "idOptions": [
          "id",
          "target"
        ]
      },
      "authoringRoles": [
        "H2"
      ],
      "wraps": [
        "editScale"
      ],
      "editableVia": [
        "editXScale",
        "editScale"
      ],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [
        {
          "path": "paddingInner",
          "unit": "band-fraction"
        },
        {
          "path": "paddingOuter",
          "unit": "band-fraction"
        },
        {
          "path": "align",
          "unit": "ratio"
        },
        {
          "path": "padding",
          "unit": "band-fraction"
        }
      ],
      "inference": [
        {
          "input": "target",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "domain",
          "strategy": "documented-auto"
        },
        {
          "input": "range",
          "strategy": "documented-auto"
        }
      ],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "existing x scale"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "id",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "target",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "reverse",
          "required": false,
          "type": "boolean | undefined"
        },
        {
          "name": "type",
          "required": false,
          "type": "\"band\" | \"point\" | \"time\" | QuantitativePositionScaleType | undefined"
        },
        {
          "name": "domain",
          "required": false,
          "type": "\"auto\" | readonly unknown[] | readonly [number, number] | undefined"
        },
        {
          "name": "range",
          "required": false,
          "type": "\"auto\" | readonly [number, number] | undefined"
        },
        {
          "name": "unknown",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "paddingInner",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "paddingOuter",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "align",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "padding",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "nice",
          "required": false,
          "type": "boolean | undefined"
        },
        {
          "name": "zero",
          "required": false,
          "type": "boolean | undefined"
        },
        {
          "name": "clamp",
          "required": false,
          "type": "boolean | undefined"
        },
        {
          "name": "base",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "exponent",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "constant",
          "required": false,
          "type": "number | undefined"
        }
      ],
      "callPatterns": [
        "editXScale({ id?, target?, reverse?, type?, domain?, range?, unknown?, paddingInner? })"
      ],
      "snippet": "program.editXScale({ reverse: true })",
      "errors": [],
      "route": "/reference/actions/charts-data/#editxscale"
    },
    {
      "schemaVersion": 3,
      "name": "editYScale",
      "layer": "user-facing",
      "domain": "core",
      "summary": "Edits y scale, including settings for vertical position mapping.",
      "signature": "editYScale(options: EditYScaleOptions): ChartProgram;",
      "intents": [
        "edit y scale",
        "edit",
        "change",
        "chart setup",
        "data and scales",
        "y scale",
        "vertical position mapping"
      ],
      "lifecycle": "Mutable resource",
      "resources": {
        "prerequisites": [
          "existing y scale"
        ],
        "owns": [],
        "idOptions": [
          "id",
          "target"
        ]
      },
      "authoringRoles": [
        "H2"
      ],
      "wraps": [
        "editScale"
      ],
      "editableVia": [
        "editYScale",
        "editScale"
      ],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [
        {
          "path": "paddingInner",
          "unit": "band-fraction"
        },
        {
          "path": "paddingOuter",
          "unit": "band-fraction"
        },
        {
          "path": "align",
          "unit": "ratio"
        },
        {
          "path": "padding",
          "unit": "band-fraction"
        }
      ],
      "inference": [
        {
          "input": "target",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "domain",
          "strategy": "documented-auto"
        },
        {
          "input": "range",
          "strategy": "documented-auto"
        }
      ],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "existing y scale"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "id",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "target",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "reverse",
          "required": false,
          "type": "boolean | undefined"
        },
        {
          "name": "type",
          "required": false,
          "type": "\"band\" | \"point\" | \"time\" | QuantitativePositionScaleType | undefined"
        },
        {
          "name": "domain",
          "required": false,
          "type": "\"auto\" | readonly unknown[] | readonly [number, number] | undefined"
        },
        {
          "name": "range",
          "required": false,
          "type": "\"auto\" | readonly [number, number] | undefined"
        },
        {
          "name": "unknown",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "paddingInner",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "paddingOuter",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "align",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "padding",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "nice",
          "required": false,
          "type": "boolean | undefined"
        },
        {
          "name": "zero",
          "required": false,
          "type": "boolean | undefined"
        },
        {
          "name": "clamp",
          "required": false,
          "type": "boolean | undefined"
        },
        {
          "name": "base",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "exponent",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "constant",
          "required": false,
          "type": "number | undefined"
        }
      ],
      "callPatterns": [
        "editYScale({ id?, target?, reverse?, type?, domain?, range?, unknown?, paddingInner? })"
      ],
      "snippet": "program.editYScale({ reverse: true })",
      "errors": [],
      "route": "/reference/actions/charts-data/#edityscale"
    },
    {
      "schemaVersion": 3,
      "name": "editXOffsetScale",
      "layer": "user-facing",
      "domain": "core",
      "summary": "Edits x-offset scale, including settings for horizontal subgroup placement.",
      "signature": "editXOffsetScale(options: EditXOffsetScaleOptions): ChartProgram;",
      "intents": [
        "edit x offset scale",
        "edit",
        "change",
        "chart setup",
        "data and scales",
        "x-offset scale",
        "horizontal subgroup placement"
      ],
      "lifecycle": "Mutable resource",
      "resources": {
        "prerequisites": [
          "existing x-offset scale"
        ],
        "owns": [],
        "idOptions": [
          "target"
        ]
      },
      "authoringRoles": [
        "H2"
      ],
      "wraps": [
        "editScale"
      ],
      "editableVia": [
        "editXOffsetScale"
      ],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [
        {
          "path": "paddingInner",
          "unit": "band-fraction"
        },
        {
          "path": "paddingOuter",
          "unit": "band-fraction"
        },
        {
          "path": "padding",
          "unit": "band-fraction"
        },
        {
          "path": "align",
          "unit": "ratio"
        }
      ],
      "inference": [
        {
          "input": "target",
          "strategy": "explicit"
        },
        {
          "input": "domain",
          "strategy": "documented-auto"
        }
      ],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "existing x-offset scale"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "target",
          "required": true,
          "type": "string"
        },
        {
          "name": "domain",
          "required": false,
          "type": "\"auto\" | readonly unknown[] | undefined"
        },
        {
          "name": "reverse",
          "required": false,
          "type": "boolean | undefined"
        },
        {
          "name": "paddingInner",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "paddingOuter",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "padding",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "align",
          "required": false,
          "type": "number | undefined"
        }
      ],
      "callPatterns": [
        "editXOffsetScale({ target, domain?, reverse?, padding?, paddingInner?, paddingOuter?, align? })"
      ],
      "snippet": "program.editXOffsetScale({ target: \"bars\", paddingInner: 0.2, paddingOuter: 0.1 })",
      "errors": [
        {
          "error": "The target has no xOffset scale.",
          "fix": "Encode a categorical xOffset on that mark before editing its nested scale."
        },
        {
          "error": "range, type, or order is supplied.",
          "fix": "Use domain for subgroup order; the parent category slot owns the concrete range and the scale type is ordinal."
        }
      ],
      "route": "/reference/actions/charts-data/#editxoffsetscale"
    },
    {
      "schemaVersion": 3,
      "name": "editYOffsetScale",
      "layer": "user-facing",
      "domain": "core",
      "summary": "Edits y-offset scale, including settings for vertical subgroup placement.",
      "signature": "editYOffsetScale(options: EditYOffsetScaleOptions): ChartProgram;",
      "intents": [
        "edit y offset scale",
        "edit",
        "change",
        "chart setup",
        "data and scales",
        "y-offset scale",
        "vertical subgroup placement"
      ],
      "lifecycle": "Mutable resource",
      "resources": {
        "prerequisites": [
          "existing y-offset scale"
        ],
        "owns": [],
        "idOptions": [
          "target"
        ]
      },
      "authoringRoles": [
        "H2"
      ],
      "wraps": [
        "editScale"
      ],
      "editableVia": [
        "editYOffsetScale"
      ],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [
        {
          "path": "paddingInner",
          "unit": "band-fraction"
        },
        {
          "path": "paddingOuter",
          "unit": "band-fraction"
        },
        {
          "path": "padding",
          "unit": "band-fraction"
        },
        {
          "path": "align",
          "unit": "ratio"
        }
      ],
      "inference": [
        {
          "input": "target",
          "strategy": "explicit"
        },
        {
          "input": "domain",
          "strategy": "documented-auto"
        }
      ],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "existing y-offset scale"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "target",
          "required": true,
          "type": "string"
        },
        {
          "name": "domain",
          "required": false,
          "type": "\"auto\" | readonly unknown[] | undefined"
        },
        {
          "name": "reverse",
          "required": false,
          "type": "boolean | undefined"
        },
        {
          "name": "paddingInner",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "paddingOuter",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "padding",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "align",
          "required": false,
          "type": "number | undefined"
        }
      ],
      "callPatterns": [
        "editYOffsetScale({ target, domain?, reverse?, padding?, paddingInner?, paddingOuter?, align? })"
      ],
      "snippet": "program.editYOffsetScale({ target: \"bars\", reverse: true })",
      "errors": [
        {
          "error": "The target has no yOffset scale.",
          "fix": "Encode a categorical yOffset on that mark before editing its nested scale."
        },
        {
          "error": "range, type, or order is supplied.",
          "fix": "Use domain for subgroup order; the parent category slot owns the concrete range and the scale type is ordinal."
        }
      ],
      "route": "/reference/actions/charts-data/#edityoffsetscale"
    },
    {
      "schemaVersion": 3,
      "name": "editParallelScale",
      "layer": "user-facing",
      "domain": "core",
      "summary": "Edits parallel dimension scale, including settings for field-selected parallel scale.",
      "signature": "editParallelScale(options: EditParallelScaleOptions): ChartProgram;",
      "intents": [
        "edit parallel scale",
        "edit",
        "change",
        "chart setup",
        "data and scales",
        "parallel dimension scale",
        "field-selected parallel scale"
      ],
      "lifecycle": "Mutable resource",
      "resources": {
        "prerequisites": [
          "existing parallel dimension scale"
        ],
        "owns": [],
        "idOptions": [
          "target"
        ]
      },
      "authoringRoles": [
        "H2"
      ],
      "wraps": [
        "editScale"
      ],
      "editableVia": [
        "editParallelScale"
      ],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [
        {
          "path": "paddingInner",
          "unit": "band-fraction"
        },
        {
          "path": "paddingOuter",
          "unit": "band-fraction"
        },
        {
          "path": "align",
          "unit": "ratio"
        },
        {
          "path": "padding",
          "unit": "band-fraction"
        }
      ],
      "inference": [
        {
          "input": "target",
          "strategy": "explicit"
        },
        {
          "input": "domain",
          "strategy": "documented-auto"
        },
        {
          "input": "range",
          "strategy": "documented-auto"
        }
      ],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "existing parallel dimension scale"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "target",
          "required": true,
          "type": "string"
        },
        {
          "name": "dimension",
          "required": true,
          "type": "string"
        },
        {
          "name": "reverse",
          "required": false,
          "type": "boolean | undefined"
        },
        {
          "name": "type",
          "required": false,
          "type": "\"band\" | \"point\" | QuantitativePositionScaleType | undefined"
        },
        {
          "name": "domain",
          "required": false,
          "type": "\"auto\" | readonly unknown[] | readonly [number, number] | undefined"
        },
        {
          "name": "range",
          "required": false,
          "type": "\"auto\" | readonly [number, number] | undefined"
        },
        {
          "name": "unknown",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "paddingInner",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "paddingOuter",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "align",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "padding",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "nice",
          "required": false,
          "type": "boolean | undefined"
        },
        {
          "name": "zero",
          "required": false,
          "type": "boolean | undefined"
        },
        {
          "name": "clamp",
          "required": false,
          "type": "boolean | undefined"
        },
        {
          "name": "base",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "exponent",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "constant",
          "required": false,
          "type": "number | undefined"
        }
      ],
      "callPatterns": [
        "editParallelScale({ target, dimension, reverse?, type?, domain?, range?, unknown?, paddingInner? })"
      ],
      "snippet": "program.editParallelScale({ target: \"parallelLines\", dimension: \"amount\", reverse: true })",
      "errors": [],
      "route": "/reference/actions/charts-data/#editparallelscale"
    },
    {
      "schemaVersion": 3,
      "name": "editThetaScale",
      "layer": "user-facing",
      "domain": "core",
      "summary": "Edits theta scale, including settings for angular position mapping.",
      "signature": "editThetaScale(options: EditThetaScaleOptions): ChartProgram;",
      "intents": [
        "edit theta scale",
        "edit",
        "change",
        "chart setup",
        "data and scales",
        "theta scale",
        "angular position mapping"
      ],
      "lifecycle": "Mutable resource",
      "resources": {
        "prerequisites": [
          "existing theta scale"
        ],
        "owns": [],
        "idOptions": [
          "id",
          "target"
        ]
      },
      "authoringRoles": [
        "H2"
      ],
      "wraps": [
        "editScale"
      ],
      "editableVia": [
        "editThetaScale",
        "editScale"
      ],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [
        {
          "path": "paddingInner",
          "unit": "band-fraction"
        },
        {
          "path": "paddingOuter",
          "unit": "band-fraction"
        },
        {
          "path": "padding",
          "unit": "band-fraction"
        },
        {
          "path": "align",
          "unit": "ratio"
        }
      ],
      "inference": [
        {
          "input": "target",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "domain",
          "strategy": "documented-auto"
        },
        {
          "input": "range",
          "strategy": "documented-auto"
        }
      ],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "existing theta scale"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "id",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "target",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "type",
          "required": false,
          "type": "\"band\" | \"linear\" | \"point\" | \"time\" | undefined"
        },
        {
          "name": "domain",
          "required": false,
          "type": "\"auto\" | readonly unknown[] | undefined"
        },
        {
          "name": "range",
          "required": false,
          "type": "\"auto\" | readonly [number, number] | undefined"
        },
        {
          "name": "nice",
          "required": false,
          "type": "boolean | undefined"
        },
        {
          "name": "zero",
          "required": false,
          "type": "boolean | undefined"
        },
        {
          "name": "clamp",
          "required": false,
          "type": "boolean | undefined"
        },
        {
          "name": "reverse",
          "required": false,
          "type": "boolean | undefined"
        },
        {
          "name": "paddingInner",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "paddingOuter",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "padding",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "align",
          "required": false,
          "type": "number | undefined"
        }
      ],
      "callPatterns": [
        "editThetaScale({ id?, target?, type?, domain?, range?, nice?, zero?, clamp? })"
      ],
      "snippet": "program.editThetaScale({ reverse: true })",
      "errors": [],
      "route": "/reference/actions/charts-data/#editthetascale"
    },
    {
      "schemaVersion": 3,
      "name": "editRScale",
      "layer": "user-facing",
      "domain": "core",
      "summary": "Edits radial scale, including settings for radial position mapping.",
      "signature": "editRScale(options: EditRScaleOptions): ChartProgram;",
      "intents": [
        "edit radial scale",
        "edit",
        "change",
        "chart setup",
        "data and scales",
        "radial scale",
        "radial position mapping"
      ],
      "lifecycle": "Mutable resource",
      "resources": {
        "prerequisites": [
          "existing radial scale"
        ],
        "owns": [],
        "idOptions": [
          "id",
          "target"
        ]
      },
      "authoringRoles": [
        "H2"
      ],
      "wraps": [
        "editScale"
      ],
      "editableVia": [
        "editRScale",
        "editScale"
      ],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [],
      "inference": [
        {
          "input": "target",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "domain",
          "strategy": "documented-auto"
        },
        {
          "input": "range",
          "strategy": "documented-auto"
        }
      ],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "existing radial scale"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "id",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "target",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "type",
          "required": false,
          "type": "\"linear\" | \"log\" | \"pow\" | \"sqrt\" | \"symlog\" | undefined"
        },
        {
          "name": "domain",
          "required": false,
          "type": "\"auto\" | readonly [number, number] | undefined"
        },
        {
          "name": "range",
          "required": false,
          "type": "\"auto\" | readonly [number, number] | undefined"
        },
        {
          "name": "nice",
          "required": false,
          "type": "boolean | undefined"
        },
        {
          "name": "zero",
          "required": false,
          "type": "boolean | undefined"
        },
        {
          "name": "clamp",
          "required": false,
          "type": "boolean | undefined"
        },
        {
          "name": "reverse",
          "required": false,
          "type": "boolean | undefined"
        },
        {
          "name": "base",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "exponent",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "constant",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "radialMapping",
          "required": false,
          "type": "RadialMapping | undefined"
        }
      ],
      "callPatterns": [
        "editRScale({ id?, target?, type?, domain?, range?, nice?, zero?, clamp? })"
      ],
      "snippet": "program.editRScale({ reverse: true })",
      "errors": [],
      "route": "/reference/actions/charts-data/#editrscale"
    },
    {
      "schemaVersion": 3,
      "name": "editColorScale",
      "layer": "user-facing",
      "domain": "core",
      "summary": "Edits color scale, including settings for color mapping.",
      "signature": "editColorScale(options: EditColorScaleOptions): ChartProgram;",
      "intents": [
        "edit color scale",
        "edit",
        "change",
        "chart setup",
        "data and scales",
        "color scale",
        "color mapping"
      ],
      "lifecycle": "Mutable resource",
      "resources": {
        "prerequisites": [
          "existing color scale"
        ],
        "owns": [],
        "idOptions": [
          "id",
          "target"
        ]
      },
      "authoringRoles": [
        "H2"
      ],
      "wraps": [
        "editScale"
      ],
      "editableVia": [
        "editColorScale",
        "editScale"
      ],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [],
      "inference": [
        {
          "input": "target",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "domain",
          "strategy": "documented-auto"
        },
        {
          "input": "range",
          "strategy": "documented-auto"
        },
        {
          "input": "midpoint",
          "strategy": "documented-auto"
        }
      ],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "existing color scale"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "id",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "target",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "palette",
          "required": false,
          "type": "\"accent\" | \"bluegreen\" | \"blueorange\" | \"bluepurple\" | \"blues\" | \"brownbluegreen\" | \"browns\" | \"category10\" | \"category20\" | \"category20b\" | \"category20c\" | \"cividis\" | \"dark2\" | ... 60 more ... | undefined"
        },
        {
          "name": "type",
          "required": false,
          "type": "\"ordinal\" | \"quantile\" | \"quantize\" | \"sequential\" | \"threshold\" | undefined"
        },
        {
          "name": "domain",
          "required": false,
          "type": "\"auto\" | readonly unknown[] | readonly number[] | readonly [unknown, unknown] | readonly [number, number] | undefined"
        },
        {
          "name": "range",
          "required": false,
          "type": "\"auto\" | readonly string[] | { readonly palette: Palette; } | readonly [string, string, ...string[]] | undefined"
        },
        {
          "name": "unknown",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "clamp",
          "required": false,
          "type": "boolean | undefined"
        },
        {
          "name": "reverse",
          "required": false,
          "type": "boolean | undefined"
        },
        {
          "name": "interpolate",
          "required": false,
          "type": "ContinuousColorInterpolation | undefined"
        },
        {
          "name": "midpoint",
          "required": false,
          "type": "number | \"auto\" | undefined"
        }
      ],
      "callPatterns": [
        "editColorScale({ id?, target?, palette?, type?, domain?, range?, unknown?, clamp? })"
      ],
      "snippet": "program.editColorScale({ palette: \"set2\" })",
      "errors": [],
      "route": "/reference/actions/charts-data/#editcolorscale"
    },
    {
      "schemaVersion": 3,
      "name": "editStrokeScale",
      "layer": "user-facing",
      "domain": "core",
      "summary": "Edits stroke color scale, including settings for outline color mapping.",
      "signature": "editStrokeScale(options: EditStrokeScaleOptions): ChartProgram;",
      "intents": [
        "edit stroke scale",
        "edit",
        "change",
        "chart setup",
        "data and scales",
        "stroke color scale",
        "outline color mapping"
      ],
      "lifecycle": "Mutable resource",
      "resources": {
        "prerequisites": [
          "existing stroke color scale"
        ],
        "owns": [],
        "idOptions": [
          "target"
        ]
      },
      "authoringRoles": [
        "H2"
      ],
      "wraps": [
        "editScale"
      ],
      "editableVia": [
        "editStrokeScale",
        "editScale"
      ],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [],
      "inference": [
        {
          "input": "target",
          "strategy": "explicit"
        },
        {
          "input": "domain",
          "strategy": "documented-auto"
        },
        {
          "input": "range",
          "strategy": "documented-auto"
        }
      ],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "existing stroke color scale"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "target",
          "required": true,
          "type": "string"
        },
        {
          "name": "palette",
          "required": false,
          "type": "\"accent\" | \"bluegreen\" | \"blueorange\" | \"bluepurple\" | \"blues\" | \"brownbluegreen\" | \"browns\" | \"category10\" | \"category20\" | \"category20b\" | \"category20c\" | \"cividis\" | \"dark2\" | ... 60 more ... | undefined"
        },
        {
          "name": "type",
          "required": false,
          "type": "\"ordinal\" | \"quantile\" | \"quantize\" | \"sequential\" | \"threshold\" | undefined"
        },
        {
          "name": "domain",
          "required": false,
          "type": "\"auto\" | readonly unknown[] | readonly number[] | readonly [unknown, unknown] | readonly [number, number] | undefined"
        },
        {
          "name": "range",
          "required": false,
          "type": "\"auto\" | readonly string[] | { readonly palette: Palette; } | readonly [string, string, ...string[]] | undefined"
        },
        {
          "name": "unknown",
          "required": false,
          "type": "string | undefined"
        }
      ],
      "callPatterns": [
        "editStrokeScale({ target, palette?, type?, domain?, range?, unknown? })"
      ],
      "snippet": "program.editStrokeScale({ target: \"points\", palette: \"set1\" })",
      "errors": [],
      "route": "/reference/actions/charts-data/#editstrokescale"
    },
    {
      "schemaVersion": 3,
      "name": "editSizeScale",
      "layer": "user-facing",
      "domain": "core",
      "summary": "Edits size scale, including settings for area mapping.",
      "signature": "editSizeScale(options: EditSizeScaleOptions): ChartProgram;",
      "intents": [
        "edit size scale",
        "edit",
        "change",
        "chart setup",
        "data and scales",
        "size scale",
        "area mapping"
      ],
      "lifecycle": "Mutable resource",
      "resources": {
        "prerequisites": [
          "existing size scale"
        ],
        "owns": [],
        "idOptions": [
          "id",
          "target"
        ]
      },
      "authoringRoles": [
        "H2"
      ],
      "wraps": [
        "editScale"
      ],
      "editableVia": [
        "editSizeScale",
        "editScale"
      ],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [],
      "inference": [
        {
          "input": "target",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "domain",
          "strategy": "documented-auto"
        },
        {
          "input": "range",
          "strategy": "documented-auto"
        }
      ],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "existing size scale"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "id",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "target",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "type",
          "required": false,
          "type": "\"linear\" | \"log\" | \"pow\" | \"quantile\" | \"quantize\" | \"sqrt\" | \"threshold\" | undefined"
        },
        {
          "name": "domain",
          "required": false,
          "type": "\"auto\" | readonly [number, number] | readonly [number, ...number[]] | undefined"
        },
        {
          "name": "range",
          "required": false,
          "type": "\"auto\" | readonly [number, number] | readonly [number, number, ...number[]] | undefined"
        },
        {
          "name": "unknown",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "clamp",
          "required": false,
          "type": "boolean | undefined"
        },
        {
          "name": "reverse",
          "required": false,
          "type": "boolean | undefined"
        },
        {
          "name": "base",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "exponent",
          "required": false,
          "type": "number | undefined"
        }
      ],
      "callPatterns": [
        "editSizeScale({ id?, target?, type?, domain?, range?, unknown?, clamp?, reverse? })"
      ],
      "snippet": "program.editSizeScale({ range: [20, 200] })",
      "errors": [],
      "route": "/reference/actions/charts-data/#editsizescale"
    },
    {
      "schemaVersion": 3,
      "name": "editOpacityScale",
      "layer": "user-facing",
      "domain": "core",
      "summary": "Edits opacity scale, including settings for opacity mapping.",
      "signature": "editOpacityScale(options: EditOpacityScaleOptions): ChartProgram;",
      "intents": [
        "edit opacity scale",
        "edit",
        "change",
        "chart setup",
        "data and scales",
        "opacity scale",
        "opacity mapping"
      ],
      "lifecycle": "Mutable resource",
      "resources": {
        "prerequisites": [
          "existing opacity scale"
        ],
        "owns": [],
        "idOptions": [
          "id",
          "target"
        ]
      },
      "authoringRoles": [
        "H2"
      ],
      "wraps": [
        "editScale"
      ],
      "editableVia": [
        "editOpacityScale",
        "editScale"
      ],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [],
      "inference": [
        {
          "input": "target",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "domain",
          "strategy": "documented-auto"
        },
        {
          "input": "range",
          "strategy": "documented-auto"
        }
      ],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "existing opacity scale"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "id",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "target",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "nice",
          "required": false,
          "type": "boolean | undefined"
        },
        {
          "name": "zero",
          "required": false,
          "type": "boolean | undefined"
        },
        {
          "name": "clamp",
          "required": false,
          "type": "boolean | undefined"
        },
        {
          "name": "reverse",
          "required": false,
          "type": "boolean | undefined"
        },
        {
          "name": "type",
          "required": false,
          "type": "\"linear\" | undefined"
        },
        {
          "name": "domain",
          "required": false,
          "type": "\"auto\" | readonly [number, number] | undefined"
        },
        {
          "name": "range",
          "required": false,
          "type": "\"auto\" | readonly [number, number] | undefined"
        },
        {
          "name": "unknown",
          "required": false,
          "type": "number | undefined"
        }
      ],
      "callPatterns": [
        "editOpacityScale({ id?, target?, nice?, zero?, clamp?, reverse?, type?, domain? })"
      ],
      "snippet": "program.editOpacityScale({ range: [0.2, 0.9] })",
      "errors": [],
      "route": "/reference/actions/charts-data/#editopacityscale"
    },
    {
      "schemaVersion": 3,
      "name": "editShapeScale",
      "layer": "user-facing",
      "domain": "core",
      "summary": "Edits shape scale, including settings for categorical shape mapping.",
      "signature": "editShapeScale(options: EditShapeScaleOptions): ChartProgram;",
      "intents": [
        "edit shape scale",
        "edit",
        "change",
        "chart setup",
        "data and scales",
        "shape scale",
        "categorical shape mapping"
      ],
      "lifecycle": "Mutable resource",
      "resources": {
        "prerequisites": [
          "existing shape scale"
        ],
        "owns": [],
        "idOptions": [
          "id",
          "target"
        ]
      },
      "authoringRoles": [
        "H2"
      ],
      "wraps": [
        "editScale"
      ],
      "editableVia": [
        "editShapeScale",
        "editScale"
      ],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [],
      "inference": [
        {
          "input": "target",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "domain",
          "strategy": "documented-auto"
        },
        {
          "input": "range",
          "strategy": "documented-auto"
        }
      ],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "existing shape scale"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "id",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "target",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "type",
          "required": false,
          "type": "\"ordinal\" | undefined"
        },
        {
          "name": "domain",
          "required": false,
          "type": "\"auto\" | readonly unknown[] | undefined"
        },
        {
          "name": "range",
          "required": false,
          "type": "\"auto\" | readonly PointShape[] | undefined"
        },
        {
          "name": "unknown",
          "required": false,
          "type": "PointShape | undefined"
        }
      ],
      "callPatterns": [
        "editShapeScale({ id?, target?, type?, domain?, range?, unknown? })"
      ],
      "snippet": "program.editShapeScale({ range: [\"circle\", \"diamond\"] })",
      "errors": [],
      "route": "/reference/actions/charts-data/#editshapescale"
    },
    {
      "schemaVersion": 3,
      "name": "editStrokeWidthScale",
      "layer": "user-facing",
      "domain": "core",
      "summary": "Edits stroke-width scale, including settings for line-width mapping.",
      "signature": "editStrokeWidthScale(options: EditStrokeWidthScaleOptions): ChartProgram;",
      "intents": [
        "edit stroke width scale",
        "edit",
        "change",
        "chart setup",
        "data and scales",
        "stroke-width scale",
        "line-width mapping"
      ],
      "lifecycle": "Mutable resource",
      "resources": {
        "prerequisites": [
          "existing stroke-width scale"
        ],
        "owns": [],
        "idOptions": [
          "id",
          "target"
        ]
      },
      "authoringRoles": [
        "H2"
      ],
      "wraps": [
        "editScale"
      ],
      "editableVia": [
        "editStrokeWidthScale",
        "editScale"
      ],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [],
      "inference": [
        {
          "input": "target",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "domain",
          "strategy": "documented-auto"
        },
        {
          "input": "range",
          "strategy": "documented-auto"
        }
      ],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "existing stroke-width scale"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "id",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "target",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "nice",
          "required": false,
          "type": "boolean | undefined"
        },
        {
          "name": "zero",
          "required": false,
          "type": "boolean | undefined"
        },
        {
          "name": "clamp",
          "required": false,
          "type": "boolean | undefined"
        },
        {
          "name": "reverse",
          "required": false,
          "type": "boolean | undefined"
        },
        {
          "name": "base",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "exponent",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "constant",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "type",
          "required": false,
          "type": "QuantitativePositionScaleType | undefined"
        },
        {
          "name": "domain",
          "required": false,
          "type": "\"auto\" | readonly [number, number] | undefined"
        },
        {
          "name": "range",
          "required": false,
          "type": "\"auto\" | readonly [number, number] | undefined"
        }
      ],
      "callPatterns": [
        "editStrokeWidthScale({ id?, target?, nice?, zero?, clamp?, reverse?, base?, exponent? })"
      ],
      "snippet": "program.editStrokeWidthScale({ range: [1, 8] })",
      "errors": [],
      "route": "/reference/actions/charts-data/#editstrokewidthscale"
    },
    {
      "schemaVersion": 3,
      "name": "editStrokeDashScale",
      "layer": "user-facing",
      "domain": "core",
      "summary": "Edits stroke-dash scale, including settings for dash-pattern mapping.",
      "signature": "editStrokeDashScale(options: EditStrokeDashScaleOptions): ChartProgram;",
      "intents": [
        "edit stroke dash scale",
        "edit",
        "change",
        "chart setup",
        "data and scales",
        "stroke-dash scale",
        "dash-pattern mapping"
      ],
      "lifecycle": "Mutable resource",
      "resources": {
        "prerequisites": [
          "existing stroke-dash scale"
        ],
        "owns": [],
        "idOptions": [
          "id",
          "target"
        ]
      },
      "authoringRoles": [
        "H2"
      ],
      "wraps": [
        "editScale"
      ],
      "editableVia": [
        "editStrokeDashScale",
        "editScale"
      ],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [],
      "inference": [
        {
          "input": "target",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "domain",
          "strategy": "documented-auto"
        },
        {
          "input": "range",
          "strategy": "documented-auto"
        }
      ],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "existing stroke-dash scale"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "id",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "target",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "type",
          "required": false,
          "type": "\"ordinal\" | undefined"
        },
        {
          "name": "domain",
          "required": false,
          "type": "\"auto\" | readonly unknown[] | undefined"
        },
        {
          "name": "range",
          "required": false,
          "type": "\"auto\" | readonly (DashPattern | DashStyle)[] | undefined"
        }
      ],
      "callPatterns": [
        "editStrokeDashScale({ id?, target?, type?, domain?, range? })"
      ],
      "snippet": "program.editStrokeDashScale({ range: [[], [4, 2]] })",
      "errors": [],
      "route": "/reference/actions/charts-data/#editstrokedashscale"
    },
    {
      "schemaVersion": 3,
      "name": "createDerivedData",
      "layer": "user-facing",
      "domain": "core",
      "summary": "Creates derived dataset for stored transform provenance.",
      "signature": "createDerivedData(options: CreateDerivedDataOptions): ChartProgram;",
      "intents": [
        "create derived data",
        "create",
        "add",
        "chart setup",
        "data and scales",
        "derived dataset",
        "stored transform provenance"
      ],
      "lifecycle": "Immutable create-only",
      "resources": {
        "prerequisites": [
          "source dataset"
        ],
        "owns": [
          "derived dataset"
        ],
        "idOptions": [
          "id",
          "source"
        ]
      },
      "authoringRoles": [
        "H2"
      ],
      "wraps": [
        "editSemantic"
      ],
      "editableVia": [
        "editDerivedData"
      ],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [],
      "inference": [
        {
          "input": "source",
          "strategy": "explicit"
        }
      ],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "source dataset"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "id",
          "required": true,
          "type": "string"
        },
        {
          "name": "source",
          "required": true,
          "type": "string"
        },
        {
          "name": "transform",
          "required": true,
          "type": "readonly [DatasetTransform]"
        }
      ],
      "callPatterns": [
        "createDerivedData({ id, source, transform })"
      ],
      "snippet": "program.createDerivedData({ id: \"filtered\", source: \"source\", transform: [{ type: \"filter\", field: \"value\", predicate: { op: \"gt\", value: 0 } }] })",
      "errors": [
        {
          "error": "transform is empty or contains more than one transform.",
          "fix": "Provide exactly one valid DatasetTransform object."
        }
      ],
      "route": "/reference/actions/charts-data/#createderiveddata"
    },
    {
      "schemaVersion": 3,
      "name": "createRegressionBand",
      "layer": "user-facing",
      "domain": "statistics",
      "summary": "Creates regression band for uncertainty interval.",
      "signature": "createRegressionBand(options: CreateRegressionBandOptions): ChartProgram;",
      "intents": [
        "create regression band",
        "create",
        "add",
        "statistical layer",
        "statistical transform",
        "regression band",
        "uncertainty interval"
      ],
      "lifecycle": "Mutable resource",
      "resources": {
        "prerequisites": [
          "statistical source and coordinate context"
        ],
        "owns": [
          "regression band"
        ],
        "idOptions": [
          "id",
          "data",
          "coordinate",
          "xScale",
          "yScale"
        ]
      },
      "authoringRoles": [
        "H1"
      ],
      "wraps": [
        "createErrorBand",
        "editSemantic",
        "editAreaMark"
      ],
      "editableVia": [
        "editRegressionBand"
      ],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [
        {
          "path": "opacity",
          "unit": "probability"
        },
        {
          "path": "strokeWidth",
          "unit": "logical-pixel"
        }
      ],
      "inference": [
        {
          "input": "data",
          "strategy": "explicit"
        },
        {
          "input": "coordinate",
          "strategy": "explicit"
        },
        {
          "input": "xScale",
          "strategy": "explicit"
        },
        {
          "input": "yScale",
          "strategy": "explicit"
        },
        {
          "input": "omitted optional options",
          "strategy": "documented-default"
        }
      ],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "statistical source and coordinate context"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "id",
          "required": true,
          "type": "string"
        },
        {
          "name": "data",
          "required": true,
          "type": "string"
        },
        {
          "name": "x",
          "required": true,
          "type": "string"
        },
        {
          "name": "lower",
          "required": true,
          "type": "string"
        },
        {
          "name": "upper",
          "required": true,
          "type": "string"
        },
        {
          "name": "groupBy",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "coordinate",
          "required": true,
          "type": "string"
        },
        {
          "name": "xScale",
          "required": true,
          "type": "string"
        },
        {
          "name": "yScale",
          "required": true,
          "type": "string"
        },
        {
          "name": "color",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "opacity",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "stroke",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "strokeWidth",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "curve",
          "required": false,
          "type": "CurveInterpolation | undefined"
        },
        {
          "name": "lineCap",
          "required": false,
          "type": "\"butt\" | \"round\" | \"square\" | undefined"
        },
        {
          "name": "lineJoin",
          "required": false,
          "type": "\"bevel\" | \"miter\" | \"round\" | undefined"
        },
        {
          "name": "miterLimit",
          "required": false,
          "type": "number | undefined"
        }
      ],
      "callPatterns": [
        "createRegressionBand({ id, data, x, lower, upper, coordinate, xScale, yScale })"
      ],
      "snippet": "program.createRegressionBand({ id: \"regression-band-1\", data: \"data-1\", x: \"x\", lower: \"lower\", upper: \"upper\", coordinate: \"coordinate-1\", xScale: \"x-scale\", yScale: \"y-scale\" })",
      "errors": [],
      "route": "/reference/actions/statistics/#createregressionband"
    },
    {
      "schemaVersion": 3,
      "name": "editRegressionBand",
      "layer": "user-facing",
      "domain": "statistics",
      "summary": "Edits regression band, including settings for uncertainty interval.",
      "signature": "editRegressionBand(options: StrokeStyleDetails & { target?: string; color?: string; opacity?: number; stroke?: string | false; strokeWidth?: number; curve?: CurveInterpolation; }): ChartProgram;",
      "intents": [
        "edit regression band",
        "edit",
        "change",
        "statistical layer",
        "statistical transform",
        "regression band",
        "uncertainty interval"
      ],
      "lifecycle": "Mutable resource",
      "resources": {
        "prerequisites": [
          "existing regression band",
          "statistical source and coordinate context"
        ],
        "owns": [],
        "idOptions": [
          "target"
        ]
      },
      "authoringRoles": [
        "H1",
        "H3"
      ],
      "wraps": [
        "editAreaMark"
      ],
      "editableVia": [
        "editRegressionBand"
      ],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [
        {
          "path": "opacity",
          "unit": "probability"
        },
        {
          "path": "strokeWidth",
          "unit": "logical-pixel"
        }
      ],
      "inference": [
        {
          "input": "target",
          "strategy": "explicit-current-unique-or-error"
        }
      ],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "existing regression band",
          "statistical source and coordinate context"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "lineCap",
          "required": false,
          "type": "\"butt\" | \"round\" | \"square\" | undefined"
        },
        {
          "name": "lineJoin",
          "required": false,
          "type": "\"bevel\" | \"miter\" | \"round\" | undefined"
        },
        {
          "name": "miterLimit",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "target",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "color",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "opacity",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "stroke",
          "required": false,
          "type": "string | false | undefined"
        },
        {
          "name": "strokeWidth",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "curve",
          "required": false,
          "type": "CurveInterpolation | undefined"
        }
      ],
      "callPatterns": [
        "editRegressionBand({ target?, lineCap?, lineJoin?, miterLimit?, color?, opacity?, stroke?, strokeWidth? })"
      ],
      "snippet": "program.editRegressionBand({ lineCap: \"butt\" })",
      "errors": [],
      "route": "/reference/actions/statistics/#editregressionband"
    },
    {
      "schemaVersion": 3,
      "name": "createRegressionLine",
      "layer": "user-facing",
      "domain": "statistics",
      "summary": "Creates regression line for fitted curve.",
      "signature": "createRegressionLine(options: CreateRegressionLineOptions): ChartProgram;",
      "intents": [
        "create regression line",
        "create",
        "add",
        "statistical layer",
        "statistical transform",
        "regression line",
        "fitted curve"
      ],
      "lifecycle": "Mutable resource",
      "resources": {
        "prerequisites": [
          "statistical source and coordinate context"
        ],
        "owns": [
          "regression line"
        ],
        "idOptions": [
          "id",
          "data",
          "coordinate",
          "xScale",
          "yScale"
        ]
      },
      "authoringRoles": [
        "H1"
      ],
      "wraps": [
        "createLineMark",
        "encodeX",
        "encodeY",
        "encodeColor",
        "encodeGroup"
      ],
      "editableVia": [
        "editRegressionLine"
      ],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [
        {
          "path": "strokeWidth",
          "unit": "logical-pixel"
        }
      ],
      "inference": [
        {
          "input": "data",
          "strategy": "explicit"
        },
        {
          "input": "coordinate",
          "strategy": "explicit"
        },
        {
          "input": "xScale",
          "strategy": "explicit"
        },
        {
          "input": "yScale",
          "strategy": "explicit"
        },
        {
          "input": "omitted optional options",
          "strategy": "documented-default"
        }
      ],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "statistical source and coordinate context"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "id",
          "required": true,
          "type": "string"
        },
        {
          "name": "data",
          "required": true,
          "type": "string"
        },
        {
          "name": "x",
          "required": true,
          "type": "string"
        },
        {
          "name": "y",
          "required": true,
          "type": "string"
        },
        {
          "name": "groupBy",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "coordinate",
          "required": true,
          "type": "string"
        },
        {
          "name": "xScale",
          "required": true,
          "type": "string"
        },
        {
          "name": "yScale",
          "required": true,
          "type": "string"
        },
        {
          "name": "colorScale",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "strokeWidth",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "curve",
          "required": false,
          "type": "CurveInterpolation | undefined"
        },
        {
          "name": "lineCap",
          "required": false,
          "type": "\"butt\" | \"round\" | \"square\" | undefined"
        },
        {
          "name": "lineJoin",
          "required": false,
          "type": "\"bevel\" | \"miter\" | \"round\" | undefined"
        },
        {
          "name": "miterLimit",
          "required": false,
          "type": "number | undefined"
        }
      ],
      "callPatterns": [
        "createRegressionLine({ id, data, x, y, coordinate, xScale, yScale, groupBy? })"
      ],
      "snippet": "program.createRegressionLine({ id: \"regression-line-1\", data: \"data-1\", x: \"x\", y: \"y\", coordinate: \"coordinate-1\", xScale: \"x-scale\", yScale: \"y-scale\" })",
      "errors": [],
      "route": "/reference/actions/statistics/#createregressionline"
    },
    {
      "schemaVersion": 3,
      "name": "editRegressionLine",
      "layer": "user-facing",
      "domain": "statistics",
      "summary": "Edits regression line, including settings for fitted curve.",
      "signature": "editRegressionLine(options: StrokeStyleDetails & { target?: string; strokeWidth?: number; curve?: CurveInterpolation; }): ChartProgram;",
      "intents": [
        "edit regression line",
        "edit",
        "change",
        "statistical layer",
        "statistical transform",
        "regression line",
        "fitted curve"
      ],
      "lifecycle": "Mutable resource",
      "resources": {
        "prerequisites": [
          "existing regression line",
          "statistical source and coordinate context"
        ],
        "owns": [],
        "idOptions": [
          "target"
        ]
      },
      "authoringRoles": [
        "H1",
        "H3"
      ],
      "wraps": [
        "editLineMark"
      ],
      "editableVia": [
        "editRegressionLine"
      ],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [
        {
          "path": "strokeWidth",
          "unit": "logical-pixel"
        }
      ],
      "inference": [
        {
          "input": "target",
          "strategy": "explicit-current-unique-or-error"
        }
      ],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "existing regression line",
          "statistical source and coordinate context"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "lineCap",
          "required": false,
          "type": "\"butt\" | \"round\" | \"square\" | undefined"
        },
        {
          "name": "lineJoin",
          "required": false,
          "type": "\"bevel\" | \"miter\" | \"round\" | undefined"
        },
        {
          "name": "miterLimit",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "target",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "strokeWidth",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "curve",
          "required": false,
          "type": "CurveInterpolation | undefined"
        }
      ],
      "callPatterns": [
        "editRegressionLine({ target?, lineCap?, lineJoin?, miterLimit?, strokeWidth?, curve? })"
      ],
      "snippet": "program.editRegressionLine({ lineCap: \"butt\" })",
      "errors": [],
      "route": "/reference/actions/statistics/#editregressionline"
    },
    {
      "schemaVersion": 3,
      "name": "filterMarks",
      "layer": "user-facing",
      "domain": "mark-selection",
      "summary": "Retain matching final mark items through the shared selector grammar.",
      "signature": "filterMarks(options: FilterMarksOptions): ChartProgram;",
      "intents": [
        "filter marks",
        "filter",
        "retain matching",
        "mark selection",
        "conditional emphasis",
        "mark items",
        "selected graphical items"
      ],
      "lifecycle": "Mutable resource",
      "resources": {
        "prerequisites": [
          "target mark and selector operands"
        ],
        "owns": [
          "mark items"
        ],
        "idOptions": [
          "target"
        ]
      },
      "authoringRoles": [
        "H3"
      ],
      "wraps": [
        "createDerivedData"
      ],
      "editableVia": [
        "removeMarkFilter"
      ],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [
        {
          "path": "count",
          "unit": "count"
        }
      ],
      "inference": [
        {
          "input": "target",
          "strategy": "explicit-current-unique-or-error"
        }
      ],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "target mark and selector operands"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "target",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "mode",
          "required": false,
          "type": "\"compose\" | \"replace\" | undefined"
        },
        {
          "name": "grain",
          "required": false,
          "type": "\"item\" | \"stack\" | undefined"
        },
        {
          "name": "field",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "channel",
          "required": false,
          "type": "\"color\" | \"group\" | \"opacity\" | \"radius\" | \"shape\" | \"size\" | \"stroke\" | \"strokeDash\" | \"strokeWidth\" | \"theta\" | \"x\" | \"x2\" | \"xOffset\" | \"y\" | \"y2\" | \"yOffset\" | undefined"
        },
        {
          "name": "property",
          "required": false,
          "type": "MarkGraphicProperty | undefined"
        },
        {
          "name": "op",
          "required": true,
          "type": "\"eq\" | \"gt\" | \"gte\" | \"lt\" | \"lte\" | \"max\" | \"min\" | \"neq\" | \"oneOf\" | \"range\""
        },
        {
          "name": "value",
          "required": false,
          "type": "unknown"
        },
        {
          "name": "values",
          "required": false,
          "type": "readonly unknown[]"
        },
        {
          "name": "min",
          "required": false,
          "type": "string | number"
        },
        {
          "name": "max",
          "required": false,
          "type": "string | number"
        },
        {
          "name": "inclusive",
          "required": false,
          "type": "boolean | undefined"
        },
        {
          "name": "count",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "groupBy",
          "required": false,
          "type": "string | readonly string[] | undefined"
        },
        {
          "name": "ties",
          "required": false,
          "type": "\"all\" | \"first\" | undefined"
        }
      ],
      "callPatterns": [
        "filterMarks({ field | channel | property, op, ...operands })",
        "filterMarks({ target?, mode: replace | compose, ...selector })"
      ],
      "snippet": "program.filterMarks({ field: \"value\", op: \"gt\", value: 0 })",
      "errors": [],
      "route": "/reference/actions/charts-data/#filtermarks"
    },
    {
      "schemaVersion": 3,
      "name": "removeMarkFilter",
      "layer": "user-facing",
      "domain": "mark-selection",
      "summary": "Restore a filtered mark to its canonical source, recover its prior Histogram bin policy, and retain any filtered dataset snapshot that still has downstream users.",
      "signature": "removeMarkFilter(options?: RemoveMarkFilterOptions): ChartProgram;",
      "intents": [
        "remove mark filter",
        "remove",
        "delete",
        "mark selection",
        "conditional emphasis",
        "active mark filter",
        "filtered final items"
      ],
      "lifecycle": "Mutable resource",
      "resources": {
        "prerequisites": [
          "existing active mark filter",
          "target mark and selector operands"
        ],
        "owns": [],
        "idOptions": [
          "target"
        ]
      },
      "authoringRoles": [
        "H3"
      ],
      "wraps": [
        "editSemantic"
      ],
      "editableVia": [],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [],
      "inference": [
        {
          "input": "target",
          "strategy": "explicit-current-unique-or-error"
        }
      ],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "existing active mark filter",
          "target mark and selector operands"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "target",
          "required": false,
          "type": "string | undefined"
        }
      ],
      "callPatterns": [
        "removeMarkFilter({ target? })"
      ],
      "snippet": "program.removeMarkFilter({})",
      "errors": [],
      "route": "/reference/actions/charts-data/#removemarkfilter"
    },
    {
      "schemaVersion": 3,
      "name": "selectMarks",
      "layer": "advanced",
      "domain": "mark-selection",
      "summary": "Stores a reusable selection of mark items without changing graphics.",
      "signature": "selectMarks(options: SelectMarksOptions): ChartProgram;",
      "intents": [
        "select marks",
        "select",
        "store selection",
        "mark selection",
        "conditional emphasis",
        "mark items",
        "selected graphical items"
      ],
      "lifecycle": "Stable create-only",
      "resources": {
        "prerequisites": [
          "target mark and selector operands"
        ],
        "owns": [
          "mark items"
        ],
        "idOptions": [
          "id",
          "target"
        ]
      },
      "authoringRoles": [
        "H3"
      ],
      "wraps": [],
      "editableVia": [
        "editMarkSelection",
        "removeMarkSelection"
      ],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [
        {
          "path": "count",
          "unit": "count"
        }
      ],
      "inference": [
        {
          "input": "target",
          "strategy": "explicit-current-unique-or-error"
        }
      ],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "target mark and selector operands"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "id",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "target",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "grain",
          "required": false,
          "type": "\"item\" | \"stack\" | undefined"
        },
        {
          "name": "field",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "channel",
          "required": false,
          "type": "\"color\" | \"group\" | \"opacity\" | \"radius\" | \"shape\" | \"size\" | \"stroke\" | \"strokeDash\" | \"strokeWidth\" | \"theta\" | \"x\" | \"x2\" | \"xOffset\" | \"y\" | \"y2\" | \"yOffset\" | undefined"
        },
        {
          "name": "property",
          "required": false,
          "type": "MarkGraphicProperty | undefined"
        },
        {
          "name": "op",
          "required": true,
          "type": "\"eq\" | \"gt\" | \"gte\" | \"lt\" | \"lte\" | \"max\" | \"min\" | \"neq\" | \"oneOf\" | \"range\""
        },
        {
          "name": "value",
          "required": false,
          "type": "unknown"
        },
        {
          "name": "values",
          "required": false,
          "type": "readonly unknown[]"
        },
        {
          "name": "min",
          "required": false,
          "type": "string | number"
        },
        {
          "name": "max",
          "required": false,
          "type": "string | number"
        },
        {
          "name": "inclusive",
          "required": false,
          "type": "boolean | undefined"
        },
        {
          "name": "count",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "groupBy",
          "required": false,
          "type": "string | readonly string[] | undefined"
        },
        {
          "name": "ties",
          "required": false,
          "type": "\"all\" | \"first\" | undefined"
        }
      ],
      "callPatterns": [
        "selectMarks({ id?, field | channel | property, op, ...operands })",
        "selectMarks({ id?, target?, grain?, op: min | max, count? })"
      ],
      "snippet": "program.selectMarks({ field: \"category\", op: \"eq\", value: \"A\" })",
      "errors": [],
      "route": "/reference/actions/advanced/#selectmarks"
    },
    {
      "schemaVersion": 3,
      "name": "editMarkSelection",
      "layer": "advanced",
      "domain": "mark-selection",
      "summary": "Replace the complete selector while preserving the stored selection ID and mark target.",
      "signature": "editMarkSelection(options: EditMarkSelectionOptions): ChartProgram;",
      "intents": [
        "edit mark selection",
        "edit",
        "change",
        "mark selection",
        "conditional emphasis",
        "stored mark selection",
        "reusable selector"
      ],
      "lifecycle": "Mutable resource",
      "resources": {
        "prerequisites": [
          "existing stored mark selection",
          "target mark and selector operands"
        ],
        "owns": [],
        "idOptions": [
          "selection"
        ]
      },
      "authoringRoles": [
        "H3"
      ],
      "wraps": [
        "editGraphics"
      ],
      "editableVia": [
        "editMarkSelection",
        "removeMarkSelection"
      ],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [
        {
          "path": "count",
          "unit": "count"
        }
      ],
      "inference": [
        {
          "input": "selection",
          "strategy": "explicit-current-unique-or-error"
        }
      ],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "existing stored mark selection",
          "target mark and selector operands"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "selection",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "grain",
          "required": false,
          "type": "\"item\" | \"stack\" | undefined"
        },
        {
          "name": "field",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "channel",
          "required": false,
          "type": "\"color\" | \"group\" | \"opacity\" | \"radius\" | \"shape\" | \"size\" | \"stroke\" | \"strokeDash\" | \"strokeWidth\" | \"theta\" | \"x\" | \"x2\" | \"xOffset\" | \"y\" | \"y2\" | \"yOffset\" | undefined"
        },
        {
          "name": "property",
          "required": false,
          "type": "MarkGraphicProperty | undefined"
        },
        {
          "name": "op",
          "required": true,
          "type": "\"eq\" | \"gt\" | \"gte\" | \"lt\" | \"lte\" | \"max\" | \"min\" | \"neq\" | \"oneOf\" | \"range\""
        },
        {
          "name": "value",
          "required": false,
          "type": "unknown"
        },
        {
          "name": "values",
          "required": false,
          "type": "readonly unknown[]"
        },
        {
          "name": "min",
          "required": false,
          "type": "string | number"
        },
        {
          "name": "max",
          "required": false,
          "type": "string | number"
        },
        {
          "name": "inclusive",
          "required": false,
          "type": "boolean | undefined"
        },
        {
          "name": "count",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "groupBy",
          "required": false,
          "type": "string | readonly string[] | undefined"
        },
        {
          "name": "ties",
          "required": false,
          "type": "\"all\" | \"first\" | undefined"
        }
      ],
      "callPatterns": [
        "editMarkSelection({ selection?, field | channel | property, op, ...operands })",
        "editMarkSelection({ selection?, grain?, op: min | max, count? })"
      ],
      "snippet": "program.editMarkSelection({ field: \"category\", op: \"eq\", value: \"A\" })",
      "errors": [],
      "route": "/reference/actions/advanced/#editmarkselection"
    },
    {
      "schemaVersion": 3,
      "name": "removeMarkHighlight",
      "layer": "user-facing",
      "domain": "mark-selection",
      "summary": "Remove one highlight assignment, restore the target mark and categorical legend baseline, and retain the reusable selection.",
      "signature": "removeMarkHighlight(options?: RemoveMarkSelectionOptions): ChartProgram;",
      "intents": [
        "remove mark highlight",
        "remove",
        "delete",
        "mark selection",
        "conditional emphasis",
        "mark highlight"
      ],
      "lifecycle": "Mutable resource",
      "resources": {
        "prerequisites": [
          "existing mark highlight",
          "target mark and selector operands"
        ],
        "owns": [],
        "idOptions": [
          "selection"
        ]
      },
      "authoringRoles": [
        "H3"
      ],
      "wraps": [
        "editGraphics"
      ],
      "editableVia": [],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [],
      "inference": [
        {
          "input": "selection",
          "strategy": "explicit-current-unique-or-error"
        }
      ],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "existing mark highlight",
          "target mark and selector operands"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "selection",
          "required": false,
          "type": "string | undefined"
        }
      ],
      "callPatterns": [
        "removeMarkHighlight({ selection? })"
      ],
      "snippet": "program.removeMarkHighlight({})",
      "errors": [],
      "route": "/reference/actions/charts-data/#removemarkhighlight"
    },
    {
      "schemaVersion": 3,
      "name": "removeMarkSelection",
      "layer": "advanced",
      "domain": "mark-selection",
      "summary": "Release one stored selection after removing its dependent highlight.",
      "signature": "removeMarkSelection(options?: RemoveMarkSelectionOptions): ChartProgram;",
      "intents": [
        "remove mark selection",
        "remove",
        "delete",
        "mark selection",
        "conditional emphasis",
        "stored mark selection",
        "reusable selector"
      ],
      "lifecycle": "Mutable resource",
      "resources": {
        "prerequisites": [
          "existing stored mark selection",
          "target mark and selector operands"
        ],
        "owns": [],
        "idOptions": [
          "selection"
        ]
      },
      "authoringRoles": [
        "H3"
      ],
      "wraps": [
        "removeMarkHighlight"
      ],
      "editableVia": [],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [],
      "inference": [
        {
          "input": "selection",
          "strategy": "explicit-current-unique-or-error"
        }
      ],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "existing stored mark selection",
          "target mark and selector operands"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "selection",
          "required": false,
          "type": "string | undefined"
        }
      ],
      "callPatterns": [
        "removeMarkSelection({ selection? })"
      ],
      "snippet": "program.removeMarkSelection({})",
      "errors": [],
      "route": "/reference/actions/advanced/#removemarkselection"
    },
    {
      "schemaVersion": 3,
      "name": "highlightMarks",
      "layer": "user-facing",
      "domain": "mark-selection",
      "summary": "Select point, bar, line, area, arc, or rule items inline or reuse a stored selection, then apply mark-specific concrete emphasis, optional complement dimming, and selected-last order.",
      "signature": "highlightMarks(options: HighlightMarksOptions): ChartProgram;",
      "intents": [
        "highlight marks",
        "highlight",
        "emphasize",
        "mark selection",
        "conditional emphasis",
        "mark items",
        "selected graphical items"
      ],
      "lifecycle": "Mutable resource",
      "resources": {
        "prerequisites": [
          "target mark and selector operands"
        ],
        "owns": [
          "mark items"
        ],
        "idOptions": [
          "id",
          "target",
          "selection"
        ]
      },
      "authoringRoles": [
        "H3"
      ],
      "wraps": [
        "selectMarks"
      ],
      "editableVia": [
        "removeMarkHighlight"
      ],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [
        {
          "path": "opacity",
          "unit": "probability"
        },
        {
          "path": "strokeWidth",
          "unit": "logical-pixel"
        },
        {
          "path": "offset",
          "unit": "logical-pixel"
        }
      ],
      "inference": [
        {
          "input": "target",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "selection",
          "strategy": "explicit-current-unique-or-error"
        }
      ],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "target mark and selector operands"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "id",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "target",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "select",
          "required": false,
          "type": "MarkSelector | undefined"
        },
        {
          "name": "selection",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "color",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "opacity",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "fill",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "stroke",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "strokeWidth",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "strokeDash",
          "required": false,
          "type": "DashPattern | DashStyle | undefined"
        },
        {
          "name": "shape",
          "required": false,
          "type": "PointShape | undefined"
        },
        {
          "name": "size",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "offset",
          "required": false,
          "type": "{ x?: number | undefined; y?: number | undefined; } | undefined"
        },
        {
          "name": "dimOthers",
          "required": false,
          "type": "boolean | { opacity?: number | undefined; } | undefined"
        },
        {
          "name": "bringToFront",
          "required": false,
          "type": "boolean | undefined"
        }
      ],
      "callPatterns": [
        "highlightMarks({ id?, target?, selection?, select?, color?, opacity?, fill?, stroke? })"
      ],
      "snippet": "program.highlightMarks({ select: { field: \"category\", op: \"eq\", value: \"A\" }, color: \"#f28e2b\" })",
      "errors": [],
      "route": "/reference/actions/charts-data/#highlightmarks"
    },
    {
      "schemaVersion": 3,
      "name": "editSemantic",
      "layer": "primitive",
      "domain": "primitives",
      "summary": "Sets or removes one semantic property inside an extension action.",
      "signature": "editSemantic(options: EditSemanticOptions): ChartProgram;",
      "intents": [
        "edit semantic",
        "edit",
        "change",
        "extension primitive",
        "low-level authoring",
        "semantic state",
        "extension semantic property"
      ],
      "lifecycle": "Primitive",
      "resources": {
        "prerequisites": [
          "existing semantic state",
          "extension action context"
        ],
        "owns": [],
        "idOptions": []
      },
      "authoringRoles": [
        "H4"
      ],
      "wraps": [],
      "editableVia": [
        "editSemantic"
      ],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [],
      "inference": [],
      "completionRequirements": {
        "state": "not-applicable",
        "requires": [],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "property",
          "required": true,
          "type": "string"
        },
        {
          "name": "value",
          "required": false,
          "type": "unknown"
        },
        {
          "name": "remove",
          "required": false,
          "type": "boolean | undefined"
        }
      ],
      "callPatterns": [
        "editSemantic({ property, value })",
        "editSemantic({ property, remove: true })"
      ],
      "snippet": "program.editSemantic({ property: \"annotation\", value: \"note\" })",
      "errors": [
        {
          "error": "A removal also supplies value.",
          "fix": "Use either { property, value } or { property, remove: true }."
        }
      ],
      "route": "/reference/actions/extension/#editsemantic"
    },
    {
      "schemaVersion": 3,
      "name": "createGraphics",
      "layer": "primitive",
      "domain": "primitives",
      "summary": "Creates one backend-neutral concrete graphic resource inside an extension action.",
      "signature": "createGraphics(options: { id: string; type: GraphicType; length?: number; parent?: string; before?: string; after?: string; }): ChartProgram;",
      "intents": [
        "create graphics",
        "create",
        "add",
        "extension primitive",
        "low-level authoring",
        "graphic state",
        "concrete graphic resource"
      ],
      "lifecycle": "Primitive",
      "resources": {
        "prerequisites": [
          "extension action context"
        ],
        "owns": [
          "graphic state"
        ],
        "idOptions": [
          "id",
          "parent",
          "before",
          "after"
        ]
      },
      "authoringRoles": [
        "H4"
      ],
      "wraps": [],
      "editableVia": [
        "editGraphics"
      ],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [
        {
          "path": "length",
          "unit": "count"
        }
      ],
      "inference": [
        {
          "input": "parent",
          "strategy": "explicit"
        },
        {
          "input": "before",
          "strategy": "explicit"
        },
        {
          "input": "after",
          "strategy": "explicit"
        },
        {
          "input": "omitted optional options",
          "strategy": "documented-default"
        }
      ],
      "completionRequirements": {
        "state": "not-applicable",
        "requires": [],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "id",
          "required": true,
          "type": "string"
        },
        {
          "name": "type",
          "required": true,
          "type": "GraphicType"
        },
        {
          "name": "length",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "parent",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "before",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "after",
          "required": false,
          "type": "string | undefined"
        }
      ],
      "callPatterns": [
        "createGraphics({ id, type, parent?, before?, after?, length? })"
      ],
      "snippet": "program.createGraphics({ id: \"graphic-1\", type: \"collection\" })",
      "errors": [],
      "route": "/reference/actions/extension/#creategraphics"
    },
    {
      "schemaVersion": 3,
      "name": "editGraphics",
      "layer": "primitive",
      "domain": "primitives",
      "summary": "Sets a concrete graphic property or removes a top-level graphic resource inside an extension action.",
      "signature": "editGraphics(options: EditGraphicsOptions): ChartProgram;",
      "intents": [
        "edit graphics",
        "edit",
        "change",
        "extension primitive",
        "low-level authoring",
        "graphic state",
        "concrete graphic resource"
      ],
      "lifecycle": "Primitive",
      "resources": {
        "prerequisites": [
          "existing graphic state",
          "extension action context"
        ],
        "owns": [],
        "idOptions": [
          "target"
        ]
      },
      "authoringRoles": [
        "H4"
      ],
      "wraps": [],
      "editableVia": [
        "editGraphics"
      ],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [],
      "inference": [
        {
          "input": "target",
          "strategy": "explicit"
        }
      ],
      "completionRequirements": {
        "state": "not-applicable",
        "requires": [],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "target",
          "required": true,
          "type": "string"
        },
        {
          "name": "property",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "value",
          "required": false,
          "type": "unknown"
        },
        {
          "name": "remove",
          "required": false,
          "type": "boolean | undefined"
        }
      ],
      "callPatterns": [
        "editGraphics({ target, property, value })",
        "editGraphics({ target, remove: true })"
      ],
      "snippet": "program.editGraphics({ target: \"graphic-1\", remove: true })",
      "errors": [
        {
          "error": "A removal also supplies property or value.",
          "fix": "Use either { target, property, value } or { target, remove: true }."
        }
      ],
      "route": "/reference/actions/extension/#editgraphics"
    },
    {
      "schemaVersion": 3,
      "name": "createArcMark",
      "layer": "user-facing",
      "domain": "marks",
      "summary": "Create a semantic arc mark and empty closed-path collection.",
      "signature": "createArcMark(options?: StrokeStyleDetails & { id?: string; data?: string; innerRadius?: number; padAngle?: number; fill?: string; opacity?: number; stroke?: string; strokeWidth?: number; }): ChartProgram;",
      "intents": [
        "create arc mark",
        "create",
        "add",
        "graphical mark",
        "mark appearance",
        "arc mark",
        "polar sector"
      ],
      "lifecycle": "Mutable resource",
      "resources": {
        "prerequisites": [
          "dataset and coordinate context"
        ],
        "owns": [
          "arc mark"
        ],
        "idOptions": [
          "id",
          "data"
        ]
      },
      "authoringRoles": [
        "H2"
      ],
      "wraps": [
        "editSemantic",
        "createGraphics"
      ],
      "editableVia": [
        "editArcMark"
      ],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [
        {
          "path": "innerRadius",
          "unit": "ratio"
        },
        {
          "path": "padAngle",
          "unit": "degree"
        },
        {
          "path": "opacity",
          "unit": "probability"
        },
        {
          "path": "strokeWidth",
          "unit": "logical-pixel"
        }
      ],
      "inference": [
        {
          "input": "data",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "omitted optional options",
          "strategy": "documented-default"
        }
      ],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "dataset and coordinate context"
        ],
        "allowsEmpty": true
      },
      "options": [
        {
          "name": "lineCap",
          "required": false,
          "type": "\"butt\" | \"round\" | \"square\" | undefined"
        },
        {
          "name": "lineJoin",
          "required": false,
          "type": "\"bevel\" | \"miter\" | \"round\" | undefined"
        },
        {
          "name": "miterLimit",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "id",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "data",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "innerRadius",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "padAngle",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "fill",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "opacity",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "stroke",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "strokeWidth",
          "required": false,
          "type": "number | undefined"
        }
      ],
      "callPatterns": [
        "createArcMark({ id?, data?, lineCap?, lineJoin?, miterLimit?, innerRadius?, padAngle?, fill? })"
      ],
      "snippet": "program.createArcMark({})",
      "errors": [],
      "route": "/reference/actions/marks/#createarcmark"
    },
    {
      "schemaVersion": 3,
      "name": "editArcMark",
      "layer": "user-facing",
      "domain": "marks",
      "summary": "Edit arc geometry or appearance and rematerialize complete sector paths.",
      "signature": "editArcMark(options: StrokeStyleDetails & { target?: string; innerRadius?: number; padAngle?: number; fill?: string; opacity?: number; stroke?: string | false; strokeWidth?: number; }): ChartProgram;",
      "intents": [
        "edit arc mark",
        "edit",
        "change",
        "graphical mark",
        "mark appearance",
        "arc mark",
        "polar sector"
      ],
      "lifecycle": "Mutable resource",
      "resources": {
        "prerequisites": [
          "existing arc mark"
        ],
        "owns": [],
        "idOptions": [
          "target"
        ]
      },
      "authoringRoles": [
        "H3"
      ],
      "wraps": [],
      "editableVia": [
        "editArcMark"
      ],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [
        {
          "path": "innerRadius",
          "unit": "ratio"
        },
        {
          "path": "padAngle",
          "unit": "degree"
        },
        {
          "path": "opacity",
          "unit": "probability"
        },
        {
          "path": "strokeWidth",
          "unit": "logical-pixel"
        }
      ],
      "inference": [
        {
          "input": "target",
          "strategy": "explicit-current-unique-or-error"
        }
      ],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "existing arc mark"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "lineCap",
          "required": false,
          "type": "\"butt\" | \"round\" | \"square\" | undefined"
        },
        {
          "name": "lineJoin",
          "required": false,
          "type": "\"bevel\" | \"miter\" | \"round\" | undefined"
        },
        {
          "name": "miterLimit",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "target",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "innerRadius",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "padAngle",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "fill",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "opacity",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "stroke",
          "required": false,
          "type": "string | false | undefined"
        },
        {
          "name": "strokeWidth",
          "required": false,
          "type": "number | undefined"
        }
      ],
      "callPatterns": [
        "editArcMark({ target?, lineCap?, lineJoin?, miterLimit?, innerRadius?, padAngle?, fill?, opacity? })"
      ],
      "snippet": "program.editArcMark({ lineCap: \"butt\" })",
      "errors": [],
      "route": "/reference/actions/marks/#editarcmark"
    },
    {
      "schemaVersion": 3,
      "name": "createThetaAxis",
      "layer": "user-facing",
      "domain": "axes",
      "summary": "Create the complete outer circular theta axis.",
      "signature": "createThetaAxis(options?: CompleteThetaAxisOptions): ChartProgram;",
      "intents": [
        "create theta axis",
        "create",
        "add",
        "axis guide",
        "scale annotation",
        "theta axis",
        "angular guide"
      ],
      "lifecycle": "Aggregate create-only",
      "resources": {
        "prerequisites": [
          "compatible scale or encoding context"
        ],
        "owns": [
          "theta axis"
        ],
        "idOptions": [
          "scale",
          "coordinate"
        ]
      },
      "authoringRoles": [
        "H3"
      ],
      "wraps": [
        "createThetaAxisLine",
        "createThetaAxisTicks",
        "createThetaAxisLabels",
        "createThetaAxisTitle"
      ],
      "editableVia": [
        "editThetaAxis"
      ],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [],
      "inference": [
        {
          "input": "scale",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "coordinate",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "omitted optional options",
          "strategy": "documented-default"
        }
      ],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "compatible scale or encoding context"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "ticksAndLabels",
          "required": false,
          "type": "false | ThetaTicksAndLabelsOptions | undefined"
        },
        {
          "name": "scale",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "coordinate",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "line",
          "required": false,
          "type": "false | AxisLineStyleOptions | undefined"
        },
        {
          "name": "title",
          "required": false,
          "type": "false | PolarTitleOptions | undefined"
        }
      ],
      "callPatterns": [
        "createThetaAxis({ scale?, coordinate?, ticksAndLabels?, line?, title? })"
      ],
      "snippet": "program.createThetaAxis({})",
      "errors": [],
      "route": "/reference/actions/guides/#createthetaaxis"
    },
    {
      "schemaVersion": 3,
      "name": "createRadialAxis",
      "layer": "user-facing",
      "domain": "axes",
      "summary": "Create the complete center-to-edge radial axis; angle defaults to 90.",
      "signature": "createRadialAxis(options?: CompleteRadialAxisOptions): ChartProgram;",
      "intents": [
        "create radial axis",
        "create",
        "add",
        "axis guide",
        "scale annotation",
        "radial axis",
        "polar distance guide"
      ],
      "lifecycle": "Aggregate create-only",
      "resources": {
        "prerequisites": [
          "compatible scale or encoding context"
        ],
        "owns": [
          "radial axis"
        ],
        "idOptions": [
          "scale",
          "coordinate"
        ]
      },
      "authoringRoles": [
        "H3"
      ],
      "wraps": [
        "createRadialAxisLine",
        "createRadialAxisTicks",
        "createRadialAxisLabels",
        "createRadialAxisTitle"
      ],
      "editableVia": [
        "editRadialAxis"
      ],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [
        {
          "path": "angle",
          "unit": "degree"
        }
      ],
      "inference": [
        {
          "input": "scale",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "coordinate",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "omitted optional options",
          "strategy": "documented-default"
        }
      ],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "compatible scale or encoding context"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "angle",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "title",
          "required": false,
          "type": "false | RadialTitleOptions | undefined"
        },
        {
          "name": "scale",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "coordinate",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "line",
          "required": false,
          "type": "false | AxisLineStyleOptions | undefined"
        },
        {
          "name": "ticksAndLabels",
          "required": false,
          "type": "false | PolarTicksAndLabelsOptions | undefined"
        }
      ],
      "callPatterns": [
        "createRadialAxis({ scale?, coordinate?, angle?, title?, line?, ticksAndLabels? })"
      ],
      "snippet": "program.createRadialAxis({})",
      "errors": [],
      "route": "/reference/actions/guides/#createradialaxis"
    },
    {
      "schemaVersion": 3,
      "name": "editThetaAxis",
      "layer": "user-facing",
      "domain": "axes",
      "summary": "Edit selected theta-axis components.",
      "signature": "editThetaAxis(options: EditThetaAxisOptions): ChartProgram;",
      "intents": [
        "edit theta axis",
        "edit",
        "change",
        "axis guide",
        "scale annotation",
        "theta axis",
        "angular guide"
      ],
      "lifecycle": "Mutable resource",
      "resources": {
        "prerequisites": [
          "existing theta axis",
          "compatible scale or encoding context"
        ],
        "owns": [],
        "idOptions": []
      },
      "authoringRoles": [
        "H3"
      ],
      "wraps": [
        "editThetaAxisLine",
        "editThetaAxisTicks",
        "editThetaAxisLabels",
        "editThetaAxisTitle"
      ],
      "editableVia": [
        "editThetaAxis"
      ],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [],
      "inference": [],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "existing theta axis",
          "compatible scale or encoding context"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "labels",
          "required": false,
          "type": "false | ThetaAxisLabelOptions | undefined"
        },
        {
          "name": "ticksAndLabels",
          "required": false,
          "type": "false | ThetaTicksAndLabelsOptions | undefined"
        },
        {
          "name": "line",
          "required": false,
          "type": "false | AxisLineStyleOptions | undefined"
        },
        {
          "name": "ticks",
          "required": false,
          "type": "false | PolarTickOptions | undefined"
        },
        {
          "name": "title",
          "required": false,
          "type": "false | PolarTitleOptions | undefined"
        }
      ],
      "callPatterns": [
        "editThetaAxis({ labels?, ticksAndLabels?, line?, ticks?, title? })"
      ],
      "snippet": "program.editThetaAxis({ line: { color: \"#222222\" } })",
      "errors": [],
      "route": "/reference/actions/guides/#editthetaaxis"
    },
    {
      "schemaVersion": 3,
      "name": "editRadialAxis",
      "layer": "user-facing",
      "domain": "axes",
      "summary": "Edit selected radial components; angle moves the whole axis.",
      "signature": "editRadialAxis(options: EditRadialAxisOptions): ChartProgram;",
      "intents": [
        "edit radial axis",
        "edit",
        "change",
        "axis guide",
        "scale annotation",
        "radial axis",
        "polar distance guide"
      ],
      "lifecycle": "Mutable resource",
      "resources": {
        "prerequisites": [
          "existing radial axis",
          "compatible scale or encoding context"
        ],
        "owns": [],
        "idOptions": []
      },
      "authoringRoles": [
        "H3"
      ],
      "wraps": [
        "editRadialAxisLine",
        "editRadialAxisTicks",
        "editRadialAxisLabels",
        "editRadialAxisTitle"
      ],
      "editableVia": [
        "editRadialAxis"
      ],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [
        {
          "path": "angle",
          "unit": "degree"
        }
      ],
      "inference": [],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "existing radial axis",
          "compatible scale or encoding context"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "title",
          "required": false,
          "type": "false | RadialTitleOptions | undefined"
        },
        {
          "name": "angle",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "line",
          "required": false,
          "type": "false | AxisLineStyleOptions | undefined"
        },
        {
          "name": "ticks",
          "required": false,
          "type": "false | PolarTickOptions | undefined"
        },
        {
          "name": "labels",
          "required": false,
          "type": "false | PolarLabelOptions | undefined"
        },
        {
          "name": "ticksAndLabels",
          "required": false,
          "type": "false | PolarTicksAndLabelsOptions | undefined"
        }
      ],
      "callPatterns": [
        "editRadialAxis({ title?, angle?, line?, ticks?, labels?, ticksAndLabels? })"
      ],
      "snippet": "program.editRadialAxis({ title: { text: \"Radius\" } })",
      "errors": [],
      "route": "/reference/actions/guides/#editradialaxis"
    },
    {
      "schemaVersion": 3,
      "name": "removeThetaAxis",
      "layer": "user-facing",
      "domain": "axes",
      "summary": "Remove the complete theta-axis resource.",
      "signature": "removeThetaAxis(options?: RemoveAxisOptions): ChartProgram;",
      "intents": [
        "remove theta axis",
        "remove",
        "delete",
        "axis guide",
        "scale annotation",
        "theta axis",
        "angular guide"
      ],
      "lifecycle": "Mutable resource",
      "resources": {
        "prerequisites": [
          "existing theta axis",
          "compatible scale or encoding context"
        ],
        "owns": [],
        "idOptions": [
          "coordinate",
          "scale"
        ]
      },
      "authoringRoles": [
        "H3"
      ],
      "wraps": [
        "editSemantic",
        "editGraphics"
      ],
      "editableVia": [],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [],
      "inference": [
        {
          "input": "coordinate",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "scale",
          "strategy": "explicit-current-unique-or-error"
        }
      ],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "existing theta axis",
          "compatible scale or encoding context"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "coordinate",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "scale",
          "required": false,
          "type": "string | undefined"
        }
      ],
      "callPatterns": [
        "removeThetaAxis({ coordinate?, scale? })"
      ],
      "snippet": "program.removeThetaAxis({})",
      "errors": [],
      "route": "/reference/actions/guides/#removethetaaxis"
    },
    {
      "schemaVersion": 3,
      "name": "removeRadialAxis",
      "layer": "user-facing",
      "domain": "axes",
      "summary": "Remove the complete radial-axis resource.",
      "signature": "removeRadialAxis(options?: RemoveAxisOptions): ChartProgram;",
      "intents": [
        "remove radial axis",
        "remove",
        "delete",
        "axis guide",
        "scale annotation",
        "radial axis",
        "polar distance guide"
      ],
      "lifecycle": "Mutable resource",
      "resources": {
        "prerequisites": [
          "existing radial axis",
          "compatible scale or encoding context"
        ],
        "owns": [],
        "idOptions": [
          "coordinate",
          "scale"
        ]
      },
      "authoringRoles": [
        "H3"
      ],
      "wraps": [
        "editSemantic",
        "editGraphics"
      ],
      "editableVia": [],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [],
      "inference": [
        {
          "input": "coordinate",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "scale",
          "strategy": "explicit-current-unique-or-error"
        }
      ],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "existing radial axis",
          "compatible scale or encoding context"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "coordinate",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "scale",
          "required": false,
          "type": "string | undefined"
        }
      ],
      "callPatterns": [
        "removeRadialAxis({ coordinate?, scale? })"
      ],
      "snippet": "program.removeRadialAxis({})",
      "errors": [],
      "route": "/reference/actions/guides/#removeradialaxis"
    },
    {
      "schemaVersion": 3,
      "name": "createThetaAxisLine",
      "layer": "user-facing",
      "domain": "axes",
      "summary": "Create missing theta-axis line independently of the other components.",
      "signature": "createThetaAxisLine(options?: CreateThetaAxisLineOptions): ChartProgram;",
      "intents": [
        "create theta axis line",
        "create",
        "add",
        "axis guide",
        "scale annotation",
        "theta-axis line",
        "angular baseline"
      ],
      "lifecycle": "Mutable resource",
      "resources": {
        "prerequisites": [
          "compatible scale or encoding context"
        ],
        "owns": [
          "theta-axis line"
        ],
        "idOptions": [
          "scale",
          "coordinate"
        ]
      },
      "authoringRoles": [
        "H3"
      ],
      "wraps": [
        "editSemantic",
        "createGraphics",
        "editThetaAxisLine"
      ],
      "editableVia": [
        "editThetaAxisLine"
      ],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [
        {
          "path": "lineWidth",
          "unit": "logical-pixel"
        }
      ],
      "inference": [
        {
          "input": "scale",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "coordinate",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "omitted optional options",
          "strategy": "documented-default"
        }
      ],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "compatible scale or encoding context"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "color",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "lineWidth",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "scale",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "coordinate",
          "required": false,
          "type": "string | undefined"
        }
      ],
      "callPatterns": [
        "createThetaAxisLine({ scale?, coordinate?, color?, lineWidth? })"
      ],
      "snippet": "program.createThetaAxisLine({})",
      "errors": [],
      "route": "/reference/actions/guides/#createthetaaxisline"
    },
    {
      "schemaVersion": 3,
      "name": "editThetaAxisLine",
      "layer": "user-facing",
      "domain": "axes",
      "summary": "Edit the outer baseline style.",
      "signature": "editThetaAxisLine(options?: AxisLineStyleOptions): ChartProgram;",
      "intents": [
        "edit theta axis line",
        "edit",
        "change",
        "axis guide",
        "scale annotation",
        "theta-axis line",
        "angular baseline"
      ],
      "lifecycle": "Mutable resource",
      "resources": {
        "prerequisites": [
          "existing theta-axis line",
          "compatible scale or encoding context"
        ],
        "owns": [],
        "idOptions": []
      },
      "authoringRoles": [
        "H3"
      ],
      "wraps": [
        "editGraphics"
      ],
      "editableVia": [
        "editThetaAxisLine"
      ],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [
        {
          "path": "lineWidth",
          "unit": "logical-pixel"
        }
      ],
      "inference": [],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "existing theta-axis line",
          "compatible scale or encoding context"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "color",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "lineWidth",
          "required": false,
          "type": "number | undefined"
        }
      ],
      "callPatterns": [
        "editThetaAxisLine({ color?, lineWidth? })"
      ],
      "snippet": "program.editThetaAxisLine({ color: \"#f28e2b\" })",
      "errors": [],
      "route": "/reference/actions/guides/#editthetaaxisline"
    },
    {
      "schemaVersion": 3,
      "name": "createRadialAxisLine",
      "layer": "user-facing",
      "domain": "axes",
      "summary": "Create missing radial-axis line independently of the other components.",
      "signature": "createRadialAxisLine(options?: CreateRadialAxisLineOptions): ChartProgram;",
      "intents": [
        "create radial axis line",
        "create",
        "add",
        "axis guide",
        "scale annotation",
        "radial-axis line",
        "polar baseline"
      ],
      "lifecycle": "Mutable resource",
      "resources": {
        "prerequisites": [
          "compatible scale or encoding context"
        ],
        "owns": [
          "radial-axis line"
        ],
        "idOptions": [
          "scale",
          "coordinate"
        ]
      },
      "authoringRoles": [
        "H3"
      ],
      "wraps": [
        "editSemantic",
        "createGraphics",
        "editRadialAxisLine"
      ],
      "editableVia": [
        "editRadialAxisLine"
      ],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [
        {
          "path": "lineWidth",
          "unit": "logical-pixel"
        },
        {
          "path": "angle",
          "unit": "degree"
        }
      ],
      "inference": [
        {
          "input": "scale",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "coordinate",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "omitted optional options",
          "strategy": "documented-default"
        }
      ],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "compatible scale or encoding context"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "color",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "lineWidth",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "scale",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "coordinate",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "angle",
          "required": false,
          "type": "number | undefined"
        }
      ],
      "callPatterns": [
        "createRadialAxisLine({ scale?, coordinate?, color?, lineWidth?, angle? })"
      ],
      "snippet": "program.createRadialAxisLine({})",
      "errors": [],
      "route": "/reference/actions/guides/#createradialaxisline"
    },
    {
      "schemaVersion": 3,
      "name": "editRadialAxisLine",
      "layer": "user-facing",
      "domain": "axes",
      "summary": "Edit the radial baseline style.",
      "signature": "editRadialAxisLine(options?: AxisLineStyleOptions): ChartProgram;",
      "intents": [
        "edit radial axis line",
        "edit",
        "change",
        "axis guide",
        "scale annotation",
        "radial-axis line",
        "polar baseline"
      ],
      "lifecycle": "Mutable resource",
      "resources": {
        "prerequisites": [
          "existing radial-axis line",
          "compatible scale or encoding context"
        ],
        "owns": [],
        "idOptions": []
      },
      "authoringRoles": [
        "H3"
      ],
      "wraps": [
        "editGraphics"
      ],
      "editableVia": [
        "editRadialAxisLine"
      ],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [
        {
          "path": "lineWidth",
          "unit": "logical-pixel"
        }
      ],
      "inference": [],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "existing radial-axis line",
          "compatible scale or encoding context"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "color",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "lineWidth",
          "required": false,
          "type": "number | undefined"
        }
      ],
      "callPatterns": [
        "editRadialAxisLine({ color?, lineWidth? })"
      ],
      "snippet": "program.editRadialAxisLine({ color: \"#f28e2b\" })",
      "errors": [],
      "route": "/reference/actions/guides/#editradialaxisline"
    },
    {
      "schemaVersion": 3,
      "name": "createThetaAxisTicks",
      "layer": "user-facing",
      "domain": "axes",
      "summary": "Create missing theta-axis ticks independently of the other components.",
      "signature": "createThetaAxisTicks(options?: CreateThetaAxisTicksOptions): ChartProgram;",
      "intents": [
        "create theta axis ticks",
        "create",
        "add",
        "axis guide",
        "scale annotation",
        "theta-axis ticks",
        "angular tick marks"
      ],
      "lifecycle": "Mutable resource",
      "resources": {
        "prerequisites": [
          "compatible scale or encoding context"
        ],
        "owns": [
          "theta-axis ticks"
        ],
        "idOptions": [
          "scale",
          "coordinate"
        ]
      },
      "authoringRoles": [
        "H3"
      ],
      "wraps": [
        "createGraphics",
        "editThetaAxisTicks"
      ],
      "editableVia": [
        "editThetaAxisTicks"
      ],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [
        {
          "path": "lineWidth",
          "unit": "logical-pixel"
        },
        {
          "path": "length",
          "unit": "logical-pixel"
        },
        {
          "path": "count",
          "unit": "count"
        }
      ],
      "inference": [
        {
          "input": "scale",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "coordinate",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "omitted optional options",
          "strategy": "documented-default"
        }
      ],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "compatible scale or encoding context"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "color",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "lineWidth",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "length",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "count",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "values",
          "required": false,
          "type": "readonly AxisValue[] | undefined"
        },
        {
          "name": "scale",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "coordinate",
          "required": false,
          "type": "string | undefined"
        }
      ],
      "callPatterns": [
        "createThetaAxisTicks({ scale?, coordinate?, color?, lineWidth?, length?, count?, values? })"
      ],
      "snippet": "program.createThetaAxisTicks({})",
      "errors": [],
      "route": "/reference/actions/guides/#createthetaaxisticks"
    },
    {
      "schemaVersion": 3,
      "name": "editThetaAxisTicks",
      "layer": "user-facing",
      "domain": "axes",
      "summary": "Edit theta tick geometry and style.",
      "signature": "editThetaAxisTicks(options?: PolarTickOptions): ChartProgram;",
      "intents": [
        "edit theta axis ticks",
        "edit",
        "change",
        "axis guide",
        "scale annotation",
        "theta-axis ticks",
        "angular tick marks"
      ],
      "lifecycle": "Mutable resource",
      "resources": {
        "prerequisites": [
          "existing theta-axis ticks",
          "compatible scale or encoding context"
        ],
        "owns": [],
        "idOptions": []
      },
      "authoringRoles": [
        "H3"
      ],
      "wraps": [
        "editGraphics"
      ],
      "editableVia": [
        "editThetaAxisTicks"
      ],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [
        {
          "path": "count",
          "unit": "count"
        },
        {
          "path": "lineWidth",
          "unit": "logical-pixel"
        },
        {
          "path": "length",
          "unit": "logical-pixel"
        }
      ],
      "inference": [],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "existing theta-axis ticks",
          "compatible scale or encoding context"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "count",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "values",
          "required": false,
          "type": "readonly AxisValue[] | undefined"
        },
        {
          "name": "color",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "lineWidth",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "length",
          "required": false,
          "type": "number | undefined"
        }
      ],
      "callPatterns": [
        "editThetaAxisTicks({ count?, values?, color?, lineWidth?, length? })"
      ],
      "snippet": "program.editThetaAxisTicks({ count: 5 })",
      "errors": [],
      "route": "/reference/actions/guides/#editthetaaxisticks"
    },
    {
      "schemaVersion": 3,
      "name": "createRadialAxisTicks",
      "layer": "user-facing",
      "domain": "axes",
      "summary": "Create missing radial-axis ticks independently of the other components.",
      "signature": "createRadialAxisTicks(options?: CreateRadialAxisTicksOptions): ChartProgram;",
      "intents": [
        "create radial axis ticks",
        "create",
        "add",
        "axis guide",
        "scale annotation",
        "radial-axis ticks",
        "radial tick marks"
      ],
      "lifecycle": "Mutable resource",
      "resources": {
        "prerequisites": [
          "compatible scale or encoding context"
        ],
        "owns": [
          "radial-axis ticks"
        ],
        "idOptions": [
          "scale",
          "coordinate"
        ]
      },
      "authoringRoles": [
        "H3"
      ],
      "wraps": [
        "createGraphics",
        "editRadialAxisTicks"
      ],
      "editableVia": [
        "editRadialAxisTicks"
      ],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [
        {
          "path": "lineWidth",
          "unit": "logical-pixel"
        },
        {
          "path": "length",
          "unit": "logical-pixel"
        },
        {
          "path": "count",
          "unit": "count"
        },
        {
          "path": "angle",
          "unit": "degree"
        }
      ],
      "inference": [
        {
          "input": "scale",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "coordinate",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "omitted optional options",
          "strategy": "documented-default"
        }
      ],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "compatible scale or encoding context"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "color",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "lineWidth",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "length",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "count",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "values",
          "required": false,
          "type": "readonly AxisValue[] | undefined"
        },
        {
          "name": "scale",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "coordinate",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "angle",
          "required": false,
          "type": "number | undefined"
        }
      ],
      "callPatterns": [
        "createRadialAxisTicks({ scale?, coordinate?, color?, lineWidth?, length?, count?, values?, angle? })"
      ],
      "snippet": "program.createRadialAxisTicks({})",
      "errors": [],
      "route": "/reference/actions/guides/#createradialaxisticks"
    },
    {
      "schemaVersion": 3,
      "name": "editRadialAxisTicks",
      "layer": "user-facing",
      "domain": "axes",
      "summary": "Edit radial tick geometry and style.",
      "signature": "editRadialAxisTicks(options?: PolarTickOptions): ChartProgram;",
      "intents": [
        "edit radial axis ticks",
        "edit",
        "change",
        "axis guide",
        "scale annotation",
        "radial-axis ticks",
        "radial tick marks"
      ],
      "lifecycle": "Mutable resource",
      "resources": {
        "prerequisites": [
          "existing radial-axis ticks",
          "compatible scale or encoding context"
        ],
        "owns": [],
        "idOptions": []
      },
      "authoringRoles": [
        "H3"
      ],
      "wraps": [
        "editGraphics"
      ],
      "editableVia": [
        "editRadialAxisTicks"
      ],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [
        {
          "path": "count",
          "unit": "count"
        },
        {
          "path": "lineWidth",
          "unit": "logical-pixel"
        },
        {
          "path": "length",
          "unit": "logical-pixel"
        }
      ],
      "inference": [],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "existing radial-axis ticks",
          "compatible scale or encoding context"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "count",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "values",
          "required": false,
          "type": "readonly AxisValue[] | undefined"
        },
        {
          "name": "color",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "lineWidth",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "length",
          "required": false,
          "type": "number | undefined"
        }
      ],
      "callPatterns": [
        "editRadialAxisTicks({ count?, values?, color?, lineWidth?, length? })"
      ],
      "snippet": "program.editRadialAxisTicks({ count: 5 })",
      "errors": [],
      "route": "/reference/actions/guides/#editradialaxisticks"
    },
    {
      "schemaVersion": 3,
      "name": "createThetaAxisLabels",
      "layer": "user-facing",
      "domain": "axes",
      "summary": "Create missing theta-axis labels independently of the other components.",
      "signature": "createThetaAxisLabels(options?: CreateThetaAxisLabelsOptions): ChartProgram;",
      "intents": [
        "create theta axis labels",
        "create",
        "add",
        "axis guide",
        "scale annotation",
        "theta-axis labels",
        "angular tick text"
      ],
      "lifecycle": "Mutable resource",
      "resources": {
        "prerequisites": [
          "compatible scale or encoding context"
        ],
        "owns": [
          "theta-axis labels"
        ],
        "idOptions": [
          "scale",
          "coordinate"
        ]
      },
      "authoringRoles": [
        "H3"
      ],
      "wraps": [
        "createGraphics",
        "editThetaAxisLabels"
      ],
      "editableVia": [
        "editThetaAxisLabels"
      ],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [
        {
          "path": "offset",
          "unit": "logical-pixel"
        },
        {
          "path": "fontSize",
          "unit": "logical-pixel"
        },
        {
          "path": "count",
          "unit": "count"
        }
      ],
      "inference": [
        {
          "input": "scale",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "coordinate",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "labelMap",
          "strategy": "documented-auto"
        },
        {
          "input": "omitted optional options",
          "strategy": "documented-default"
        }
      ],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "compatible scale or encoding context"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "offset",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "format",
          "required": false,
          "type": "AxisFormat | undefined"
        },
        {
          "name": "color",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "fontSize",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "fontFamily",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "fontWeight",
          "required": false,
          "type": "string | number | undefined"
        },
        {
          "name": "count",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "values",
          "required": false,
          "type": "readonly AxisValue[] | undefined"
        },
        {
          "name": "scale",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "coordinate",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "labelMap",
          "required": false,
          "type": "\"auto\" | DisplayLabelMap | undefined"
        }
      ],
      "callPatterns": [
        "createThetaAxisLabels({ scale?, coordinate?, offset?, format?, color?, fontSize?, fontFamily?, fontWeight? })"
      ],
      "snippet": "program.createThetaAxisLabels({})",
      "errors": [],
      "route": "/reference/actions/guides/#createthetaaxislabels"
    },
    {
      "schemaVersion": 3,
      "name": "editThetaAxisLabels",
      "layer": "user-facing",
      "domain": "axes",
      "summary": "Edit perimeter theta labels.",
      "signature": "editThetaAxisLabels(options?: ThetaAxisLabelOptions): ChartProgram;",
      "intents": [
        "edit theta axis labels",
        "edit",
        "change",
        "axis guide",
        "scale annotation",
        "theta-axis labels",
        "angular tick text"
      ],
      "lifecycle": "Mutable resource",
      "resources": {
        "prerequisites": [
          "existing theta-axis labels",
          "compatible scale or encoding context"
        ],
        "owns": [],
        "idOptions": []
      },
      "authoringRoles": [
        "H3"
      ],
      "wraps": [
        "editGraphics"
      ],
      "editableVia": [
        "editThetaAxisLabels"
      ],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [
        {
          "path": "count",
          "unit": "count"
        },
        {
          "path": "offset",
          "unit": "logical-pixel"
        },
        {
          "path": "fontSize",
          "unit": "logical-pixel"
        }
      ],
      "inference": [
        {
          "input": "labelMap",
          "strategy": "documented-auto"
        }
      ],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "existing theta-axis labels",
          "compatible scale or encoding context"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "count",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "values",
          "required": false,
          "type": "readonly AxisValue[] | undefined"
        },
        {
          "name": "offset",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "format",
          "required": false,
          "type": "AxisFormat | undefined"
        },
        {
          "name": "color",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "fontSize",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "fontFamily",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "fontWeight",
          "required": false,
          "type": "string | number | undefined"
        },
        {
          "name": "labelMap",
          "required": false,
          "type": "\"auto\" | DisplayLabelMap | undefined"
        }
      ],
      "callPatterns": [
        "editThetaAxisLabels({ count?, values?, offset?, format?, color?, fontSize?, fontFamily?, fontWeight? })"
      ],
      "snippet": "program.editThetaAxisLabels({ count: 5 })",
      "errors": [],
      "route": "/reference/actions/guides/#editthetaaxislabels"
    },
    {
      "schemaVersion": 3,
      "name": "createRadialAxisLabels",
      "layer": "user-facing",
      "domain": "axes",
      "summary": "Create missing radial-axis labels independently of the other components.",
      "signature": "createRadialAxisLabels(options?: CreateRadialAxisLabelsOptions): ChartProgram;",
      "intents": [
        "create radial axis labels",
        "create",
        "add",
        "axis guide",
        "scale annotation",
        "radial-axis labels",
        "radial tick text"
      ],
      "lifecycle": "Mutable resource",
      "resources": {
        "prerequisites": [
          "compatible scale or encoding context"
        ],
        "owns": [
          "radial-axis labels"
        ],
        "idOptions": [
          "scale",
          "coordinate"
        ]
      },
      "authoringRoles": [
        "H3"
      ],
      "wraps": [
        "createGraphics",
        "editRadialAxisLabels"
      ],
      "editableVia": [
        "editRadialAxisLabels"
      ],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [
        {
          "path": "offset",
          "unit": "logical-pixel"
        },
        {
          "path": "fontSize",
          "unit": "logical-pixel"
        },
        {
          "path": "count",
          "unit": "count"
        },
        {
          "path": "angle",
          "unit": "degree"
        }
      ],
      "inference": [
        {
          "input": "scale",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "coordinate",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "omitted optional options",
          "strategy": "documented-default"
        }
      ],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "compatible scale or encoding context"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "offset",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "format",
          "required": false,
          "type": "AxisFormat | undefined"
        },
        {
          "name": "color",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "fontSize",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "fontFamily",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "fontWeight",
          "required": false,
          "type": "string | number | undefined"
        },
        {
          "name": "count",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "values",
          "required": false,
          "type": "readonly AxisValue[] | undefined"
        },
        {
          "name": "scale",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "coordinate",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "angle",
          "required": false,
          "type": "number | undefined"
        }
      ],
      "callPatterns": [
        "createRadialAxisLabels({ scale?, coordinate?, offset?, format?, color?, fontSize?, fontFamily?, fontWeight? })"
      ],
      "snippet": "program.createRadialAxisLabels({})",
      "errors": [],
      "route": "/reference/actions/guides/#createradialaxislabels"
    },
    {
      "schemaVersion": 3,
      "name": "editRadialAxisLabels",
      "layer": "user-facing",
      "domain": "axes",
      "summary": "Edit radial value labels.",
      "signature": "editRadialAxisLabels(options?: PolarLabelOptions): ChartProgram;",
      "intents": [
        "edit radial axis labels",
        "edit",
        "change",
        "axis guide",
        "scale annotation",
        "radial-axis labels",
        "radial tick text"
      ],
      "lifecycle": "Mutable resource",
      "resources": {
        "prerequisites": [
          "existing radial-axis labels",
          "compatible scale or encoding context"
        ],
        "owns": [],
        "idOptions": []
      },
      "authoringRoles": [
        "H3"
      ],
      "wraps": [
        "editGraphics"
      ],
      "editableVia": [
        "editRadialAxisLabels"
      ],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [
        {
          "path": "count",
          "unit": "count"
        },
        {
          "path": "offset",
          "unit": "logical-pixel"
        },
        {
          "path": "fontSize",
          "unit": "logical-pixel"
        }
      ],
      "inference": [],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "existing radial-axis labels",
          "compatible scale or encoding context"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "count",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "values",
          "required": false,
          "type": "readonly AxisValue[] | undefined"
        },
        {
          "name": "offset",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "format",
          "required": false,
          "type": "AxisFormat | undefined"
        },
        {
          "name": "color",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "fontSize",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "fontFamily",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "fontWeight",
          "required": false,
          "type": "string | number | undefined"
        }
      ],
      "callPatterns": [
        "editRadialAxisLabels({ count?, values?, offset?, format?, color?, fontSize?, fontFamily?, fontWeight? })"
      ],
      "snippet": "program.editRadialAxisLabels({ count: 5 })",
      "errors": [],
      "route": "/reference/actions/guides/#editradialaxislabels"
    },
    {
      "schemaVersion": 3,
      "name": "createThetaAxisTitle",
      "layer": "user-facing",
      "domain": "axes",
      "summary": "Create missing theta-axis title independently of the other components.",
      "signature": "createThetaAxisTitle(options?: CreateThetaAxisTitleOptions): ChartProgram;",
      "intents": [
        "create theta axis title",
        "create",
        "add",
        "axis guide",
        "scale annotation",
        "theta-axis title",
        "angular field title"
      ],
      "lifecycle": "Mutable resource",
      "resources": {
        "prerequisites": [
          "compatible scale or encoding context"
        ],
        "owns": [
          "theta-axis title"
        ],
        "idOptions": [
          "scale",
          "coordinate"
        ]
      },
      "authoringRoles": [
        "H3"
      ],
      "wraps": [
        "editSemantic",
        "createGraphics",
        "editThetaAxisTitle"
      ],
      "editableVia": [
        "editThetaAxisTitle"
      ],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [
        {
          "path": "offset",
          "unit": "logical-pixel"
        },
        {
          "path": "fontSize",
          "unit": "logical-pixel"
        }
      ],
      "inference": [
        {
          "input": "scale",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "coordinate",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "omitted optional options",
          "strategy": "documented-default"
        }
      ],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "compatible scale or encoding context"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "text",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "offset",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "color",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "fontSize",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "fontFamily",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "fontWeight",
          "required": false,
          "type": "string | number | undefined"
        },
        {
          "name": "scale",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "coordinate",
          "required": false,
          "type": "string | undefined"
        }
      ],
      "callPatterns": [
        "createThetaAxisTitle({ scale?, coordinate?, text?, offset?, color?, fontSize?, fontFamily?, fontWeight? })"
      ],
      "snippet": "program.createThetaAxisTitle({})",
      "errors": [],
      "route": "/reference/actions/guides/#createthetaaxistitle"
    },
    {
      "schemaVersion": 3,
      "name": "editThetaAxisTitle",
      "layer": "user-facing",
      "domain": "axes",
      "summary": "Edit the theta title.",
      "signature": "editThetaAxisTitle(options?: PolarTitleOptions): ChartProgram;",
      "intents": [
        "edit theta axis title",
        "edit",
        "change",
        "axis guide",
        "scale annotation",
        "theta-axis title",
        "angular field title"
      ],
      "lifecycle": "Mutable resource",
      "resources": {
        "prerequisites": [
          "existing theta-axis title",
          "compatible scale or encoding context"
        ],
        "owns": [],
        "idOptions": []
      },
      "authoringRoles": [
        "H3"
      ],
      "wraps": [
        "editGraphics",
        "editSemantic"
      ],
      "editableVia": [
        "editThetaAxisTitle"
      ],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [
        {
          "path": "offset",
          "unit": "logical-pixel"
        },
        {
          "path": "fontSize",
          "unit": "logical-pixel"
        }
      ],
      "inference": [],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "existing theta-axis title",
          "compatible scale or encoding context"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "text",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "offset",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "color",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "fontSize",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "fontFamily",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "fontWeight",
          "required": false,
          "type": "string | number | undefined"
        }
      ],
      "callPatterns": [
        "editThetaAxisTitle({ text?, offset?, color?, fontSize?, fontFamily?, fontWeight? })"
      ],
      "snippet": "program.editThetaAxisTitle({ text: \"Chart title\" })",
      "errors": [],
      "route": "/reference/actions/guides/#editthetaaxistitle"
    },
    {
      "schemaVersion": 3,
      "name": "createRadialAxisTitle",
      "layer": "user-facing",
      "domain": "axes",
      "summary": "Create missing radial-axis title independently of the other components.",
      "signature": "createRadialAxisTitle(options?: CreateRadialAxisTitleOptions): ChartProgram;",
      "intents": [
        "create radial axis title",
        "create",
        "add",
        "axis guide",
        "scale annotation",
        "radial-axis title",
        "polar field title"
      ],
      "lifecycle": "Mutable resource",
      "resources": {
        "prerequisites": [
          "compatible scale or encoding context"
        ],
        "owns": [
          "radial-axis title"
        ],
        "idOptions": [
          "scale",
          "coordinate"
        ]
      },
      "authoringRoles": [
        "H3"
      ],
      "wraps": [
        "editSemantic",
        "createGraphics",
        "editRadialAxisTitle"
      ],
      "editableVia": [
        "editRadialAxisTitle"
      ],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [
        {
          "path": "offset",
          "unit": "logical-pixel"
        },
        {
          "path": "fontSize",
          "unit": "logical-pixel"
        },
        {
          "path": "angle",
          "unit": "degree"
        }
      ],
      "inference": [
        {
          "input": "scale",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "coordinate",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "omitted optional options",
          "strategy": "documented-default"
        }
      ],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "compatible scale or encoding context"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "position",
          "required": false,
          "type": "\"inside\" | \"outside\" | undefined"
        },
        {
          "name": "text",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "offset",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "color",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "fontSize",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "fontFamily",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "fontWeight",
          "required": false,
          "type": "string | number | undefined"
        },
        {
          "name": "scale",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "coordinate",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "angle",
          "required": false,
          "type": "number | undefined"
        }
      ],
      "callPatterns": [
        "createRadialAxisTitle({ scale?, coordinate?, position?, text?, offset?, color?, fontSize?, fontFamily? })"
      ],
      "snippet": "program.createRadialAxisTitle({})",
      "errors": [],
      "route": "/reference/actions/guides/#createradialaxistitle"
    },
    {
      "schemaVersion": 3,
      "name": "editRadialAxisTitle",
      "layer": "user-facing",
      "domain": "axes",
      "summary": "Edit the radial title.",
      "signature": "editRadialAxisTitle(options?: RadialTitleOptions): ChartProgram;",
      "intents": [
        "edit radial axis title",
        "edit",
        "change",
        "axis guide",
        "scale annotation",
        "radial-axis title",
        "polar field title"
      ],
      "lifecycle": "Mutable resource",
      "resources": {
        "prerequisites": [
          "existing radial-axis title",
          "compatible scale or encoding context"
        ],
        "owns": [],
        "idOptions": []
      },
      "authoringRoles": [
        "H3"
      ],
      "wraps": [
        "editGraphics",
        "editSemantic"
      ],
      "editableVia": [
        "editRadialAxisTitle"
      ],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [
        {
          "path": "offset",
          "unit": "logical-pixel"
        },
        {
          "path": "fontSize",
          "unit": "logical-pixel"
        }
      ],
      "inference": [],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "existing radial-axis title",
          "compatible scale or encoding context"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "position",
          "required": false,
          "type": "\"inside\" | \"outside\" | undefined"
        },
        {
          "name": "text",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "offset",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "color",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "fontSize",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "fontFamily",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "fontWeight",
          "required": false,
          "type": "string | number | undefined"
        }
      ],
      "callPatterns": [
        "editRadialAxisTitle({ position?, text?, offset?, color?, fontSize?, fontFamily?, fontWeight? })"
      ],
      "snippet": "program.editRadialAxisTitle({ position: \"inside\" })",
      "errors": [],
      "route": "/reference/actions/guides/#editradialaxistitle"
    },
    {
      "schemaVersion": 3,
      "name": "createThetaGrid",
      "layer": "user-facing",
      "domain": "grid",
      "summary": "Create theta spokes behind related marks.",
      "signature": "createThetaGrid(options?: PolarGridOptions): ChartProgram;",
      "intents": [
        "create theta grid",
        "create",
        "add",
        "grid guide",
        "reference lines",
        "theta grid",
        "angular spokes"
      ],
      "lifecycle": "Mutable resource",
      "resources": {
        "prerequisites": [
          "compatible scale or encoding context"
        ],
        "owns": [
          "theta grid"
        ],
        "idOptions": [
          "scale",
          "coordinate"
        ]
      },
      "authoringRoles": [
        "H3"
      ],
      "wraps": [
        "editSemantic",
        "createGraphics"
      ],
      "editableVia": [
        "editThetaGrid"
      ],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [
        {
          "path": "count",
          "unit": "count"
        },
        {
          "path": "lineWidth",
          "unit": "logical-pixel"
        }
      ],
      "inference": [
        {
          "input": "scale",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "coordinate",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "omitted optional options",
          "strategy": "documented-default"
        }
      ],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "compatible scale or encoding context"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "scale",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "coordinate",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "count",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "values",
          "required": false,
          "type": "readonly AxisValue[] | undefined"
        },
        {
          "name": "color",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "lineWidth",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "strokeDash",
          "required": false,
          "type": "readonly number[] | undefined"
        }
      ],
      "callPatterns": [
        "createThetaGrid({ scale?, coordinate?, count?, values?, color?, lineWidth?, strokeDash? })"
      ],
      "snippet": "program.createThetaGrid({})",
      "errors": [],
      "route": "/reference/actions/guides/#createthetagrid"
    },
    {
      "schemaVersion": 3,
      "name": "createRadialGrid",
      "layer": "user-facing",
      "domain": "grid",
      "summary": "Create concentric radial paths behind related marks.",
      "signature": "createRadialGrid(options?: PolarGridOptions): ChartProgram;",
      "intents": [
        "create radial grid",
        "create",
        "add",
        "grid guide",
        "reference lines",
        "radial grid",
        "concentric reference lines"
      ],
      "lifecycle": "Mutable resource",
      "resources": {
        "prerequisites": [
          "compatible scale or encoding context"
        ],
        "owns": [
          "radial grid"
        ],
        "idOptions": [
          "scale",
          "coordinate"
        ]
      },
      "authoringRoles": [
        "H3"
      ],
      "wraps": [
        "editSemantic",
        "createGraphics"
      ],
      "editableVia": [
        "editRadialGrid"
      ],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [
        {
          "path": "count",
          "unit": "count"
        },
        {
          "path": "lineWidth",
          "unit": "logical-pixel"
        }
      ],
      "inference": [
        {
          "input": "scale",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "coordinate",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "omitted optional options",
          "strategy": "documented-default"
        }
      ],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "compatible scale or encoding context"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "scale",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "coordinate",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "count",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "values",
          "required": false,
          "type": "readonly AxisValue[] | undefined"
        },
        {
          "name": "color",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "lineWidth",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "strokeDash",
          "required": false,
          "type": "readonly number[] | undefined"
        }
      ],
      "callPatterns": [
        "createRadialGrid({ scale?, coordinate?, count?, values?, color?, lineWidth?, strokeDash? })"
      ],
      "snippet": "program.createRadialGrid({})",
      "errors": [],
      "route": "/reference/actions/guides/#createradialgrid"
    },
    {
      "schemaVersion": 3,
      "name": "editThetaGrid",
      "layer": "user-facing",
      "domain": "grid",
      "summary": "Edit the existing theta grid.",
      "signature": "editThetaGrid(options: EditPolarGridOptions): ChartProgram;",
      "intents": [
        "edit theta grid",
        "edit",
        "change",
        "grid guide",
        "reference lines",
        "theta grid",
        "angular spokes"
      ],
      "lifecycle": "Mutable resource",
      "resources": {
        "prerequisites": [
          "existing theta grid",
          "compatible scale or encoding context"
        ],
        "owns": [],
        "idOptions": []
      },
      "authoringRoles": [
        "H3"
      ],
      "wraps": [],
      "editableVia": [
        "editThetaGrid"
      ],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [
        {
          "path": "count",
          "unit": "count"
        },
        {
          "path": "lineWidth",
          "unit": "logical-pixel"
        }
      ],
      "inference": [],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "existing theta grid",
          "compatible scale or encoding context"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "count",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "values",
          "required": false,
          "type": "readonly AxisValue[] | undefined"
        },
        {
          "name": "color",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "lineWidth",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "strokeDash",
          "required": false,
          "type": "readonly number[] | undefined"
        }
      ],
      "callPatterns": [
        "editThetaGrid({ count?, values?, color?, lineWidth?, strokeDash? })"
      ],
      "snippet": "program.editThetaGrid({ count: 5 })",
      "errors": [],
      "route": "/reference/actions/guides/#editthetagrid"
    },
    {
      "schemaVersion": 3,
      "name": "editRadialGrid",
      "layer": "user-facing",
      "domain": "grid",
      "summary": "Edit the existing radial grid.",
      "signature": "editRadialGrid(options: EditPolarGridOptions): ChartProgram;",
      "intents": [
        "edit radial grid",
        "edit",
        "change",
        "grid guide",
        "reference lines",
        "radial grid",
        "concentric reference lines"
      ],
      "lifecycle": "Mutable resource",
      "resources": {
        "prerequisites": [
          "existing radial grid",
          "compatible scale or encoding context"
        ],
        "owns": [],
        "idOptions": []
      },
      "authoringRoles": [
        "H3"
      ],
      "wraps": [],
      "editableVia": [
        "editRadialGrid"
      ],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [
        {
          "path": "count",
          "unit": "count"
        },
        {
          "path": "lineWidth",
          "unit": "logical-pixel"
        }
      ],
      "inference": [],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "existing radial grid",
          "compatible scale or encoding context"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "count",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "values",
          "required": false,
          "type": "readonly AxisValue[] | undefined"
        },
        {
          "name": "color",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "lineWidth",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "strokeDash",
          "required": false,
          "type": "readonly number[] | undefined"
        }
      ],
      "callPatterns": [
        "editRadialGrid({ count?, values?, color?, lineWidth?, strokeDash? })"
      ],
      "snippet": "program.editRadialGrid({ count: 5 })",
      "errors": [],
      "route": "/reference/actions/guides/#editradialgrid"
    },
    {
      "schemaVersion": 3,
      "name": "editCompositionLayout",
      "layer": "user-facing",
      "domain": "composition",
      "summary": "Edit spacing, cross-axis alignment, or outer padding on an existing composition.",
      "signature": "editCompositionLayout(options: EditCompositionLayoutOptions): ChartProgram;",
      "intents": [
        "edit composition layout",
        "edit",
        "change",
        "chart composition",
        "small multiples",
        "composition layout",
        "child spacing and alignment"
      ],
      "lifecycle": "Mutable resource",
      "resources": {
        "prerequisites": [
          "existing composition layout",
          "complete child chart program"
        ],
        "owns": [],
        "idOptions": []
      },
      "authoringRoles": [
        "H3"
      ],
      "wraps": [],
      "editableVia": [
        "editCompositionLayout"
      ],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [
        {
          "path": "columns",
          "unit": "count"
        },
        {
          "path": "padding",
          "unit": "logical-pixel"
        }
      ],
      "inference": [],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "existing composition layout",
          "complete child chart program"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "columns",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "gap",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "align",
          "required": false,
          "type": "CompositionAlign | undefined"
        },
        {
          "name": "padding",
          "required": false,
          "type": "number | CompositionPadding | undefined"
        }
      ],
      "callPatterns": [
        "editCompositionLayout({ columns?, gap?, align?, padding? })"
      ],
      "snippet": "program.editCompositionLayout({ columns: 2 })",
      "errors": [],
      "route": "/reference/actions/charts-data/#editcompositionlayout"
    },
    {
      "schemaVersion": 3,
      "name": "replaceCompositionChild",
      "layer": "user-facing",
      "domain": "composition",
      "summary": "Replace one named child while preserving its slot ID and order.",
      "signature": "replaceCompositionChild(options: ReplaceCompositionChildOptions): ChartProgram;",
      "intents": [
        "replace composition child",
        "replace",
        "swap child",
        "chart composition",
        "small multiples",
        "composition child",
        "nested chart slot"
      ],
      "lifecycle": "Mutable resource",
      "resources": {
        "prerequisites": [
          "existing composition child",
          "complete child chart program"
        ],
        "owns": [],
        "idOptions": [
          "target"
        ]
      },
      "authoringRoles": [
        "H3"
      ],
      "wraps": [],
      "editableVia": [],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [],
      "inference": [
        {
          "input": "target",
          "strategy": "explicit"
        }
      ],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "existing composition child",
          "complete child chart program"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "target",
          "required": true,
          "type": "string"
        },
        {
          "name": "program",
          "required": true,
          "type": "ChartProgram"
        }
      ],
      "callPatterns": [
        "replaceCompositionChild({ target, program })"
      ],
      "snippet": "program.replaceCompositionChild({ target: \"child-1\", program: chart().createCanvas({}).createData({ values: [] }) })",
      "errors": [],
      "route": "/reference/actions/charts-data/#replacecompositionchild"
    },
    {
      "schemaVersion": 3,
      "name": "insertCompositionChild",
      "layer": "user-facing",
      "domain": "composition",
      "summary": "Insert a complete chart or nested composition under a new stable child name.",
      "signature": "insertCompositionChild(options: InsertCompositionChildOptions): ChartProgram;",
      "intents": [
        "insert composition child",
        "edit",
        "change",
        "chart composition",
        "small multiples",
        "composition child",
        "nested chart slot"
      ],
      "lifecycle": "Mutable resource",
      "resources": {
        "prerequisites": [
          "existing composition child",
          "complete child chart program"
        ],
        "owns": [],
        "idOptions": [
          "id",
          "before",
          "after"
        ]
      },
      "authoringRoles": [
        "H3"
      ],
      "wraps": [],
      "editableVia": [],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [],
      "inference": [
        {
          "input": "before",
          "strategy": "explicit"
        },
        {
          "input": "after",
          "strategy": "explicit"
        }
      ],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "existing composition child",
          "complete child chart program"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "id",
          "required": true,
          "type": "string"
        },
        {
          "name": "program",
          "required": true,
          "type": "ChartProgram"
        },
        {
          "name": "before",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "after",
          "required": false,
          "type": "string | undefined"
        }
      ],
      "callPatterns": [
        "insertCompositionChild({ id, program, before?, after? })"
      ],
      "snippet": "program.insertCompositionChild({ id: \"detail\", program: chart().createCanvas({}).createData({ values: [] }), after: \"overview\" })",
      "errors": [],
      "route": "/reference/actions/charts-data/#insertcompositionchild"
    },
    {
      "schemaVersion": 3,
      "name": "removeCompositionChild",
      "layer": "user-facing",
      "domain": "composition",
      "summary": "Remove one named concat child and rebuild layout.",
      "signature": "removeCompositionChild(options: RemoveCompositionChildOptions): ChartProgram;",
      "intents": [
        "remove composition child",
        "remove",
        "delete",
        "chart composition",
        "small multiples",
        "composition child",
        "nested chart slot"
      ],
      "lifecycle": "Mutable resource",
      "resources": {
        "prerequisites": [
          "existing composition child",
          "complete child chart program"
        ],
        "owns": [],
        "idOptions": [
          "target"
        ]
      },
      "authoringRoles": [
        "H3"
      ],
      "wraps": [],
      "editableVia": [],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [],
      "inference": [
        {
          "input": "target",
          "strategy": "explicit"
        }
      ],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "existing composition child",
          "complete child chart program"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "target",
          "required": true,
          "type": "string"
        }
      ],
      "callPatterns": [
        "removeCompositionChild({ target })"
      ],
      "snippet": "program.removeCompositionChild({ target: \"mark-1\" })",
      "errors": [],
      "route": "/reference/actions/charts-data/#removecompositionchild"
    },
    {
      "schemaVersion": 3,
      "name": "reorderCompositionChildren",
      "layer": "user-facing",
      "domain": "composition",
      "summary": "Provide every current concat child ID exactly once in its new order.",
      "signature": "reorderCompositionChildren(options: ReorderCompositionChildrenOptions): ChartProgram;",
      "intents": [
        "reorder composition children",
        "edit",
        "change",
        "chart composition",
        "small multiples",
        "composition child order",
        "reorder chart slots"
      ],
      "lifecycle": "Mutable resource",
      "resources": {
        "prerequisites": [
          "existing composition child order",
          "complete child chart program"
        ],
        "owns": [],
        "idOptions": []
      },
      "authoringRoles": [
        "H3"
      ],
      "wraps": [],
      "editableVia": [],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [],
      "inference": [],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "existing composition child order",
          "complete child chart program"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "order",
          "required": true,
          "type": "readonly [string, ...string[]]"
        }
      ],
      "callPatterns": [
        "reorderCompositionChildren({ order })"
      ],
      "snippet": "program.reorderCompositionChildren({ order: [\"detail\", \"overview\"] })",
      "errors": [],
      "route": "/reference/actions/charts-data/#reordercompositionchildren"
    },
    {
      "schemaVersion": 3,
      "name": "facet",
      "layer": "user-facing",
      "domain": "composition",
      "summary": "Repeat one complete Cartesian, Polar, or Parallel chart by a field on its common row-preserving dataset ancestor.",
      "signature": "facet(options: FacetOptions): ChartProgram;",
      "intents": [
        "facet",
        "repeat chart",
        "chart composition",
        "small multiples",
        "faceting"
      ],
      "lifecycle": "Aggregate create-only",
      "resources": {
        "prerequisites": [
          "complete child chart program"
        ],
        "owns": [
          "faceting"
        ],
        "idOptions": [
          "id",
          "data"
        ]
      },
      "authoringRoles": [
        "H0"
      ],
      "wraps": [],
      "editableVia": [
        "editFacetSource",
        "editFacetHeaders",
        "editFacetScales",
        "editFacetGuides",
        "editCompositionLayout"
      ],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [
        {
          "path": "columns",
          "unit": "count"
        },
        {
          "path": "padding",
          "unit": "logical-pixel"
        }
      ],
      "inference": [
        {
          "input": "data",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "omitted optional options",
          "strategy": "documented-default"
        }
      ],
      "completionRequirements": {
        "state": "complete",
        "requires": [
          "complete child chart program"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "id",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "field",
          "required": true,
          "type": "string"
        },
        {
          "name": "data",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "values",
          "required": false,
          "type": "readonly DatasetScalar[] | undefined"
        },
        {
          "name": "columns",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "gap",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "align",
          "required": false,
          "type": "CompositionAlign | undefined"
        },
        {
          "name": "padding",
          "required": false,
          "type": "number | CompositionPadding | undefined"
        },
        {
          "name": "scales",
          "required": false,
          "type": "FacetScaleResolutions | undefined"
        },
        {
          "name": "guides",
          "required": false,
          "type": "FacetGuideOptions | undefined"
        }
      ],
      "callPatterns": [
        "facet({ field, id?, data?, values?, columns?, gap?, align?, padding? })"
      ],
      "snippet": "program.facet({ field: \"value\" })",
      "errors": [],
      "route": "/reference/actions/charts-data/#facet"
    },
    {
      "schemaVersion": 3,
      "name": "facetGrid",
      "layer": "user-facing",
      "domain": "composition",
      "summary": "Repeat one supported Cartesian, Polar, or Parallel chart over two ordered categorical fields.",
      "signature": "facetGrid(options: FacetGridOptions): ChartProgram;",
      "intents": [
        "facet grid",
        "facet",
        "repeat chart",
        "chart composition",
        "small multiples",
        "row and column facets",
        "two dimensional small multiples"
      ],
      "lifecycle": "Mutable resource",
      "resources": {
        "prerequisites": [
          "complete child chart program"
        ],
        "owns": [
          "row and column facets"
        ],
        "idOptions": [
          "id",
          "data"
        ]
      },
      "authoringRoles": [
        "H0"
      ],
      "wraps": [],
      "editableVia": [
        "editFacetSource",
        "editFacetHeaders",
        "editFacetScales",
        "editFacetGuides",
        "editCompositionLayout"
      ],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [
        {
          "path": "padding",
          "unit": "logical-pixel"
        }
      ],
      "inference": [
        {
          "input": "data",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "omitted optional options",
          "strategy": "documented-default"
        }
      ],
      "completionRequirements": {
        "state": "complete",
        "requires": [
          "complete child chart program"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "id",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "data",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "rows",
          "required": true,
          "type": "FacetGridRole"
        },
        {
          "name": "columns",
          "required": true,
          "type": "FacetGridRole"
        },
        {
          "name": "combinations",
          "required": false,
          "type": "\"full\" | \"observed\" | undefined"
        },
        {
          "name": "gap",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "align",
          "required": false,
          "type": "CompositionAlign | undefined"
        },
        {
          "name": "padding",
          "required": false,
          "type": "number | CompositionPadding | undefined"
        },
        {
          "name": "scales",
          "required": false,
          "type": "FacetScaleResolutions | undefined"
        },
        {
          "name": "guides",
          "required": false,
          "type": "FacetGuideOptions | undefined"
        }
      ],
      "callPatterns": [
        "facetGrid({ rows, columns, id?, data?, combinations?, gap?, align?, padding? })"
      ],
      "snippet": "program.facetGrid({ rows: { field: \"region\" }, columns: { field: \"year\" } })",
      "errors": [],
      "route": "/reference/actions/charts-data/#facetgrid"
    },
    {
      "schemaVersion": 3,
      "name": "repeatCharts",
      "layer": "user-facing",
      "domain": "composition",
      "summary": "Repeat one direct mark by replacing Cartesian x/y, eligible Polar theta/public r, or one { parallelDimension: field }.",
      "signature": "repeatCharts(options: RepeatChartsOptions): ChartProgram;",
      "intents": [
        "repeat charts",
        "facet",
        "repeat chart",
        "chart composition",
        "small multiples",
        "repeat chart by field",
        "field comparison panels"
      ],
      "lifecycle": "Mutable resource",
      "resources": {
        "prerequisites": [
          "complete child chart program"
        ],
        "owns": [
          "repeat chart by field"
        ],
        "idOptions": [
          "id",
          "target"
        ]
      },
      "authoringRoles": [
        "H0"
      ],
      "wraps": [],
      "editableVia": [
        "editFacetSource",
        "editFacetHeaders",
        "editFacetScales",
        "editFacetGuides",
        "editCompositionLayout"
      ],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [
        {
          "path": "columns",
          "unit": "count"
        },
        {
          "path": "padding",
          "unit": "logical-pixel"
        }
      ],
      "inference": [
        {
          "input": "target",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "omitted optional options",
          "strategy": "documented-default"
        }
      ],
      "completionRequirements": {
        "state": "complete",
        "requires": [
          "complete child chart program"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "id",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "target",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "channel",
          "required": true,
          "type": "\"r\" | \"theta\" | \"x\" | \"y\" | { parallelDimension: string; }"
        },
        {
          "name": "fields",
          "required": true,
          "type": "readonly [string, ...string[]]"
        },
        {
          "name": "columns",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "gap",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "align",
          "required": false,
          "type": "CompositionAlign | undefined"
        },
        {
          "name": "padding",
          "required": false,
          "type": "number | CompositionPadding | undefined"
        },
        {
          "name": "scales",
          "required": false,
          "type": "FacetScaleResolutions | undefined"
        },
        {
          "name": "guides",
          "required": false,
          "type": "FacetGuideOptions | undefined"
        }
      ],
      "callPatterns": [
        "repeatCharts({ channel, fields, id?, target?, columns?, gap?, align?, padding? })"
      ],
      "snippet": "program.repeatCharts({ channel: \"x\", fields: [\"sales\", \"profit\"] })",
      "errors": [],
      "route": "/reference/actions/charts-data/#repeatcharts"
    },
    {
      "schemaVersion": 3,
      "name": "editFacetSource",
      "layer": "user-facing",
      "domain": "composition",
      "summary": "Reapply the current facet, grid, or repeat recipe to a revised complete unit program while preserving the partition dataset ID, ordered domains, layout, scale/guide policy, headers, and parent title.",
      "signature": "editFacetSource(options: EditFacetSourceOptions): ChartProgram;",
      "intents": [
        "edit facet source",
        "edit",
        "change",
        "chart composition",
        "small multiples",
        "facet source revision",
        "rebuild small multiples"
      ],
      "lifecycle": "Mutable resource",
      "resources": {
        "prerequisites": [
          "existing facet source revision",
          "complete child chart program"
        ],
        "owns": [],
        "idOptions": []
      },
      "authoringRoles": [
        "H3"
      ],
      "wraps": [
        "facetGrid",
        "removeTitle",
        "createTitle"
      ],
      "editableVia": [
        "editFacetSource"
      ],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [],
      "inference": [],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "existing facet source revision",
          "complete child chart program"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "program",
          "required": true,
          "type": "ChartProgram"
        }
      ],
      "callPatterns": [
        "editFacetSource({ program })"
      ],
      "snippet": "program.editFacetSource({ program: chart().createCanvas({}).createData({ values: [] }) })",
      "errors": [],
      "route": "/reference/actions/charts-data/#editfacetsource"
    },
    {
      "schemaVersion": 3,
      "name": "editFacetHeaders",
      "layer": "user-facing",
      "domain": "composition",
      "summary": "Edit the parent-owned repeated facet headers and rebuild the parent snapshot without changing child programs or facet value order.",
      "signature": "editFacetHeaders(options: EditFacetHeadersOptions): ChartProgram;",
      "intents": [
        "edit facet headers",
        "edit",
        "change",
        "chart composition",
        "small multiples",
        "facet headers",
        "small-multiple labels"
      ],
      "lifecycle": "Mutable resource",
      "resources": {
        "prerequisites": [
          "existing facet headers",
          "complete child chart program"
        ],
        "owns": [],
        "idOptions": []
      },
      "authoringRoles": [
        "H3"
      ],
      "wraps": [],
      "editableVia": [
        "editFacetHeaders"
      ],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [
        {
          "path": "fontSize",
          "unit": "logical-pixel"
        },
        {
          "path": "offset",
          "unit": "logical-pixel"
        }
      ],
      "inference": [
        {
          "input": "labelMap",
          "strategy": "documented-auto"
        }
      ],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "existing facet headers",
          "complete child chart program"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "fontSize",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "fontFamily",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "fontWeight",
          "required": false,
          "type": "string | number | undefined"
        },
        {
          "name": "color",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "offset",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "role",
          "required": false,
          "type": "FacetHeaderRole | undefined"
        },
        {
          "name": "labelMap",
          "required": false,
          "type": "\"auto\" | DisplayLabelMap | undefined"
        },
        {
          "name": "side",
          "required": false,
          "type": "FacetHeaderSide | undefined"
        },
        {
          "name": "align",
          "required": false,
          "type": "FacetHeaderAlign | undefined"
        }
      ],
      "callPatterns": [
        "editFacetHeaders({ fontSize?, fontFamily?, fontWeight?, color?, offset?, role?, labelMap?, side? })"
      ],
      "snippet": "program.editFacetHeaders({ fontSize: 1 })",
      "errors": [],
      "route": "/reference/actions/charts-data/#editfacetheaders"
    },
    {
      "schemaVersion": 3,
      "name": "editFacetScales",
      "layer": "user-facing",
      "domain": "composition",
      "summary": "Partially change used facet channels between \"shared\" and \"independent\".",
      "signature": "editFacetScales(options: FacetScaleResolutions): ChartProgram;",
      "intents": [
        "edit facet scales",
        "edit",
        "change",
        "chart composition",
        "small multiples",
        "facet scale resolution",
        "shared or independent scales"
      ],
      "lifecycle": "Mutable resource",
      "resources": {
        "prerequisites": [
          "existing facet scale resolution",
          "complete child chart program"
        ],
        "owns": [],
        "idOptions": []
      },
      "authoringRoles": [
        "H3"
      ],
      "wraps": [],
      "editableVia": [
        "editFacetScales"
      ],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [],
      "inference": [],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "existing facet scale resolution",
          "complete child chart program"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "x",
          "required": false,
          "type": "FacetScaleResolution | undefined"
        },
        {
          "name": "y",
          "required": false,
          "type": "FacetScaleResolution | undefined"
        },
        {
          "name": "xOffset",
          "required": false,
          "type": "FacetScaleResolution | undefined"
        },
        {
          "name": "yOffset",
          "required": false,
          "type": "FacetScaleResolution | undefined"
        },
        {
          "name": "theta",
          "required": false,
          "type": "FacetScaleResolution | undefined"
        },
        {
          "name": "r",
          "required": false,
          "type": "FacetScaleResolution | undefined"
        },
        {
          "name": "color",
          "required": false,
          "type": "FacetScaleResolution | undefined"
        },
        {
          "name": "stroke",
          "required": false,
          "type": "FacetScaleResolution | undefined"
        },
        {
          "name": "size",
          "required": false,
          "type": "FacetScaleResolution | undefined"
        },
        {
          "name": "shape",
          "required": false,
          "type": "FacetScaleResolution | undefined"
        },
        {
          "name": "opacity",
          "required": false,
          "type": "FacetScaleResolution | undefined"
        },
        {
          "name": "strokeDash",
          "required": false,
          "type": "FacetScaleResolution | undefined"
        },
        {
          "name": "parallelDimensions",
          "required": false,
          "type": "FacetScaleResolution | undefined"
        }
      ],
      "callPatterns": [
        "editFacetScales({ x?, y?, xOffset?, yOffset?, theta?, r?, color?, stroke? })"
      ],
      "snippet": "program.editFacetScales({ x: \"shared\" })",
      "errors": [],
      "route": "/reference/actions/charts-data/#editfacetscales"
    },
    {
      "schemaVersion": 3,
      "name": "editFacetGuides",
      "layer": "user-facing",
      "domain": "composition",
      "summary": "Partially change axes between \"each\" and \"outer\", or legend ownership between false and \"shared\".",
      "signature": "editFacetGuides(options: FacetGuideOptions): ChartProgram;",
      "intents": [
        "edit facet guides",
        "edit",
        "change",
        "chart composition",
        "small multiples",
        "facet guides",
        "outer axes and shared legends"
      ],
      "lifecycle": "Mutable resource",
      "resources": {
        "prerequisites": [
          "existing facet guides",
          "complete child chart program"
        ],
        "owns": [],
        "idOptions": []
      },
      "authoringRoles": [
        "H3"
      ],
      "wraps": [],
      "editableVia": [
        "editFacetGuides"
      ],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [],
      "inference": [],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "existing facet guides",
          "complete child chart program"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "axes",
          "required": false,
          "type": "\"each\" | \"outer\" | undefined"
        },
        {
          "name": "legend",
          "required": false,
          "type": "\"shared\" | false | undefined"
        }
      ],
      "callPatterns": [
        "editFacetGuides({ axes?, legend? })"
      ],
      "snippet": "program.editFacetGuides({ axes: \"each\" })",
      "errors": [],
      "route": "/reference/actions/charts-data/#editfacetguides"
    },
    {
      "schemaVersion": 3,
      "name": "createScatterPlot",
      "layer": "user-facing",
      "domain": "charts",
      "summary": "Draws a complete scatter plot that shows the relationship between two fields as points.",
      "signature": "createScatterPlot(options: CreateScatterPlotOptions): ChartProgram;",
      "intents": [
        "create scatter plot",
        "create",
        "add",
        "complete chart",
        "chart facade",
        "scatter plot",
        "two-field relationship"
      ],
      "lifecycle": "Aggregate create-only",
      "resources": {
        "prerequisites": [
          "canvas and dataset context"
        ],
        "owns": [
          "scatter plot"
        ],
        "idOptions": [
          "id",
          "data",
          "coordinate"
        ]
      },
      "authoringRoles": [
        "H0"
      ],
      "wraps": [
        "createPointMark",
        "encodeX",
        "encodeY",
        "encodeColor",
        "encodeShape",
        "createGuides"
      ],
      "editableVia": [],
      "supports": {
        "entryPoints": [
          "default",
          "basic"
        ]
      },
      "units": [],
      "inference": [
        {
          "input": "data",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "coordinate",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "omitted optional options",
          "strategy": "documented-default"
        }
      ],
      "completionRequirements": {
        "state": "complete",
        "requires": [
          "canvas and dataset context"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "id",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "data",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "coordinate",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "x",
          "required": true,
          "type": "PointFacadePositionChannel"
        },
        {
          "name": "y",
          "required": true,
          "type": "PointFacadePositionChannel"
        },
        {
          "name": "color",
          "required": false,
          "type": "BasicColorChannel | undefined"
        },
        {
          "name": "size",
          "required": false,
          "type": "BasicSizeChannel | undefined"
        },
        {
          "name": "shape",
          "required": false,
          "type": "BasicShapeChannel | undefined"
        },
        {
          "name": "point",
          "required": false,
          "type": "(StrokeStyleDetails & { radius?: number | undefined; shape?: PointShape | undefined; fill?: string | undefined; opacity?: number | undefined; stroke?: FilledMarkStroke | undefined; strokeWidth?: number | undefined; }) | undefined"
        },
        {
          "name": "guides",
          "required": false,
          "type": "false | CartesianGuideOptions | undefined"
        }
      ],
      "callPatterns": [
        "createScatterPlot({ x, y, id?, data?, coordinate?, color?, size?, shape? })"
      ],
      "snippet": "program.createScatterPlot({ x: \"x\", y: \"y\" })",
      "errors": [],
      "route": "/reference/actions/charts-data/#createscatterplot"
    },
    {
      "schemaVersion": 3,
      "name": "createDotPlot",
      "layer": "user-facing",
      "domain": "charts",
      "summary": "Create categorical dots from raw rows by default.",
      "signature": "createDotPlot(options: CreateDotPlotOptions): ChartProgram;",
      "intents": [
        "create dot plot",
        "create",
        "add",
        "complete chart",
        "chart facade",
        "dot plot",
        "categorical dots"
      ],
      "lifecycle": "Mutable resource",
      "resources": {
        "prerequisites": [
          "canvas and dataset context"
        ],
        "owns": [
          "dot plot"
        ],
        "idOptions": [
          "id",
          "data",
          "coordinate"
        ]
      },
      "authoringRoles": [
        "H0",
        "H1"
      ],
      "wraps": [
        "createSummaryData",
        "createPointMark",
        "encodeX",
        "encodeY"
      ],
      "editableVia": [
        "editEndpointPlot"
      ],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [],
      "inference": [
        {
          "input": "data",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "coordinate",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "omitted optional options",
          "strategy": "documented-default"
        }
      ],
      "completionRequirements": {
        "state": "complete",
        "requires": [
          "canvas and dataset context"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "value",
          "required": true,
          "type": "EndpointValueChannel"
        },
        {
          "name": "point",
          "required": false,
          "type": "(StrokeStyleDetails & { radius?: number | undefined; shape?: PointShape | undefined; fill?: string | undefined; opacity?: number | undefined; stroke?: FilledMarkStroke | undefined; strokeWidth?: number | undefined; }) | undefined"
        },
        {
          "name": "labels",
          "required": false,
          "type": "false | EndpointLabelOptions | undefined"
        },
        {
          "name": "id",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "data",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "coordinate",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "category",
          "required": true,
          "type": "EndpointCategoryChannel"
        },
        {
          "name": "orientation",
          "required": false,
          "type": "\"horizontal\" | \"vertical\" | undefined"
        },
        {
          "name": "summary",
          "required": false,
          "type": "EndpointPlotSummary | undefined"
        },
        {
          "name": "guides",
          "required": false,
          "type": "false | CartesianGuideOptions | undefined"
        }
      ],
      "callPatterns": [
        "createDotPlot({ category, value })",
        "createDotPlot({ category, value, orientation?, summary?, point?, labels?, guides? })"
      ],
      "snippet": "program.createDotPlot({ category: \"category\", value: \"value\" })",
      "errors": [],
      "route": "/reference/actions/charts-data/#createdotplot"
    },
    {
      "schemaVersion": 3,
      "name": "createLollipopPlot",
      "layer": "user-facing",
      "domain": "charts",
      "summary": "Create a value point and a stem to a finite baseline, which defaults to zero.",
      "signature": "createLollipopPlot(options: CreateLollipopPlotOptions): ChartProgram;",
      "intents": [
        "create lollipop plot",
        "create",
        "add",
        "complete chart",
        "chart facade",
        "lollipop plot",
        "value point with baseline stem"
      ],
      "lifecycle": "Mutable resource",
      "resources": {
        "prerequisites": [
          "canvas and dataset context"
        ],
        "owns": [
          "lollipop plot"
        ],
        "idOptions": [
          "id",
          "data",
          "coordinate"
        ]
      },
      "authoringRoles": [
        "H0",
        "H1"
      ],
      "wraps": [
        "createSummaryData",
        "createRuleMark",
        "encodeX",
        "encodeY",
        "encodeX2",
        "createPointMark"
      ],
      "editableVia": [
        "editEndpointPlot"
      ],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [],
      "inference": [
        {
          "input": "data",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "coordinate",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "omitted optional options",
          "strategy": "documented-default"
        }
      ],
      "completionRequirements": {
        "state": "complete",
        "requires": [
          "canvas and dataset context"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "value",
          "required": true,
          "type": "EndpointValueChannel"
        },
        {
          "name": "baseline",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "point",
          "required": false,
          "type": "(StrokeStyleDetails & { radius?: number | undefined; shape?: PointShape | undefined; fill?: string | undefined; opacity?: number | undefined; stroke?: FilledMarkStroke | undefined; strokeWidth?: number | undefined; }) | undefined"
        },
        {
          "name": "stem",
          "required": false,
          "type": "RuleStyleOptions | undefined"
        },
        {
          "name": "labels",
          "required": false,
          "type": "false | EndpointLabelOptions | undefined"
        },
        {
          "name": "id",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "data",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "coordinate",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "category",
          "required": true,
          "type": "EndpointCategoryChannel"
        },
        {
          "name": "orientation",
          "required": false,
          "type": "\"horizontal\" | \"vertical\" | undefined"
        },
        {
          "name": "summary",
          "required": false,
          "type": "EndpointPlotSummary | undefined"
        },
        {
          "name": "guides",
          "required": false,
          "type": "false | CartesianGuideOptions | undefined"
        }
      ],
      "callPatterns": [
        "createLollipopPlot({ category, value })",
        "createLollipopPlot({ category, value, baseline?, orientation?, summary?, point?, stem?, labels?, guides? })"
      ],
      "snippet": "program.createLollipopPlot({ category: \"category\", value: \"value\", baseline: 0 })",
      "errors": [],
      "route": "/reference/actions/charts-data/#createlollipopplot"
    },
    {
      "schemaVersion": 3,
      "name": "createDumbbellPlot",
      "layer": "user-facing",
      "domain": "charts",
      "summary": "Create named start and end points with a connector.",
      "signature": "createDumbbellPlot(options: CreateDumbbellPlotOptions): ChartProgram;",
      "intents": [
        "create dumbbell plot",
        "create",
        "add",
        "complete chart",
        "chart facade",
        "dumbbell plot",
        "connected start and end points"
      ],
      "lifecycle": "Mutable resource",
      "resources": {
        "prerequisites": [
          "canvas and dataset context"
        ],
        "owns": [
          "dumbbell plot"
        ],
        "idOptions": [
          "id",
          "data",
          "coordinate"
        ]
      },
      "authoringRoles": [
        "H0",
        "H1"
      ],
      "wraps": [
        "createSummaryData",
        "createRuleMark",
        "encodeX",
        "encodeY",
        "encodeX2",
        "createPointMark"
      ],
      "editableVia": [
        "editEndpointPlot"
      ],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [],
      "inference": [
        {
          "input": "data",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "coordinate",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "omitted optional options",
          "strategy": "documented-default"
        }
      ],
      "completionRequirements": {
        "state": "complete",
        "requires": [
          "canvas and dataset context"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "start",
          "required": true,
          "type": "EndpointValueChannel"
        },
        {
          "name": "end",
          "required": true,
          "type": "EndpointValueChannel"
        },
        {
          "name": "startPoint",
          "required": false,
          "type": "(StrokeStyleDetails & { radius?: number | undefined; shape?: PointShape | undefined; fill?: string | undefined; opacity?: number | undefined; stroke?: FilledMarkStroke | undefined; strokeWidth?: number | undefined; }) | undefined"
        },
        {
          "name": "endPoint",
          "required": false,
          "type": "(StrokeStyleDetails & { radius?: number | undefined; shape?: PointShape | undefined; fill?: string | undefined; opacity?: number | undefined; stroke?: FilledMarkStroke | undefined; strokeWidth?: number | undefined; }) | undefined"
        },
        {
          "name": "connector",
          "required": false,
          "type": "RuleStyleOptions | undefined"
        },
        {
          "name": "labels",
          "required": false,
          "type": "false | (EndpointLabelOptions & { endpoint?: \"both\" | \"end\" | \"start\" | undefined; }) | undefined"
        },
        {
          "name": "id",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "data",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "coordinate",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "category",
          "required": true,
          "type": "EndpointCategoryChannel"
        },
        {
          "name": "orientation",
          "required": false,
          "type": "\"horizontal\" | \"vertical\" | undefined"
        },
        {
          "name": "summary",
          "required": false,
          "type": "EndpointPlotSummary | undefined"
        },
        {
          "name": "guides",
          "required": false,
          "type": "false | CartesianGuideOptions | undefined"
        }
      ],
      "callPatterns": [
        "createDumbbellPlot({ category, start, end })",
        "createDumbbellPlot({ category, start, end, orientation?, summary?, startPoint?, endPoint?, connector?, labels?, guides? })"
      ],
      "snippet": "program.createDumbbellPlot({ category: \"category\", start: \"before\", end: \"after\" })",
      "errors": [],
      "route": "/reference/actions/charts-data/#createdumbbellplot"
    },
    {
      "schemaVersion": 3,
      "name": "editEndpointPlot",
      "layer": "user-facing",
      "domain": "charts",
      "summary": "Atomically revise the semantic roles of a Dot, Lollipop, or Dumbbell facade.",
      "signature": "editEndpointPlot(options: EditEndpointPlotOptions): ChartProgram;",
      "intents": [
        "edit endpoint plot",
        "edit",
        "change",
        "complete chart",
        "chart facade",
        "endpoint plot",
        "dot lollipop or dumbbell semantic roles"
      ],
      "lifecycle": "Mutable resource",
      "resources": {
        "prerequisites": [
          "existing endpoint plot",
          "canvas and dataset context"
        ],
        "owns": [],
        "idOptions": [
          "target",
          "data",
          "coordinate"
        ]
      },
      "authoringRoles": [
        "H1",
        "H3"
      ],
      "wraps": [
        "removeMark",
        "createDumbbellPlot"
      ],
      "editableVia": [
        "editEndpointPlot"
      ],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [],
      "inference": [
        {
          "input": "target",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "data",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "coordinate",
          "strategy": "explicit-current-unique-or-error"
        }
      ],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "existing endpoint plot",
          "canvas and dataset context"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "target",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "data",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "coordinate",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "category",
          "required": false,
          "type": "EndpointCategoryChannel | undefined"
        },
        {
          "name": "orientation",
          "required": false,
          "type": "\"horizontal\" | \"vertical\" | undefined"
        },
        {
          "name": "summary",
          "required": false,
          "type": "EndpointPlotSummary | undefined"
        },
        {
          "name": "start",
          "required": false,
          "type": "EndpointValueChannel | undefined"
        },
        {
          "name": "end",
          "required": false,
          "type": "EndpointValueChannel | undefined"
        },
        {
          "name": "value",
          "required": false,
          "type": "EndpointValueChannel | undefined"
        },
        {
          "name": "baseline",
          "required": false,
          "type": "number | undefined"
        }
      ],
      "callPatterns": [
        "editEndpointPlot({ value })",
        "editEndpointPlot({ target?, data?, category?, value?, start?, end?, orientation?, summary?, baseline? })"
      ],
      "snippet": "program.editEndpointPlot({ value: \"updatedValue\" })",
      "errors": [],
      "route": "/reference/actions/charts-data/#editendpointplot"
    },
    {
      "schemaVersion": 3,
      "name": "createECDFPlot",
      "layer": "user-facing",
      "domain": "charts",
      "summary": "Create a right-continuous empirical cumulative distribution as an ordinary step-after line.",
      "signature": "createECDFPlot(options: CreateECDFPlotOptions): ChartProgram;",
      "intents": [
        "create ecdf plot",
        "create",
        "add",
        "complete chart",
        "chart facade",
        "ECDF plot",
        "empirical cumulative distribution"
      ],
      "lifecycle": "Mutable resource",
      "resources": {
        "prerequisites": [
          "canvas and dataset context"
        ],
        "owns": [
          "ECDF plot"
        ],
        "idOptions": [
          "id",
          "data",
          "coordinate"
        ]
      },
      "authoringRoles": [
        "H0",
        "H1"
      ],
      "wraps": [
        "createECDFData",
        "createLineMark",
        "encodeX",
        "encodeY",
        "encodeGroup"
      ],
      "editableVia": [
        "editECDFPlot"
      ],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [],
      "inference": [
        {
          "input": "data",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "coordinate",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "omitted optional options",
          "strategy": "documented-default"
        }
      ],
      "completionRequirements": {
        "state": "complete",
        "requires": [
          "canvas and dataset context"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "id",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "data",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "coordinate",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "field",
          "required": true,
          "type": "string"
        },
        {
          "name": "groupBy",
          "required": false,
          "type": "string | readonly [string, ...string[]] | undefined"
        },
        {
          "name": "weight",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "missing",
          "required": false,
          "type": "\"drop\" | \"error\" | undefined"
        },
        {
          "name": "as",
          "required": false,
          "type": "ECDFOutputFields | undefined"
        },
        {
          "name": "color",
          "required": false,
          "type": "LineCategoricalColorChannel | undefined"
        },
        {
          "name": "line",
          "required": false,
          "type": "(StrokeStyleDetails & { strokeWidth?: number | undefined; stroke?: string | undefined; opacity?: number | undefined; }) | undefined"
        },
        {
          "name": "labels",
          "required": false,
          "type": "false | EndpointLabelOptions | undefined"
        },
        {
          "name": "guides",
          "required": false,
          "type": "false | CartesianPathGuideOptions | undefined"
        }
      ],
      "callPatterns": [
        "createECDFPlot({ field, id?, data?, coordinate?, groupBy?, weight?, missing?, as? })"
      ],
      "snippet": "program.createECDFPlot({ field: \"value\" })",
      "errors": [],
      "route": "/reference/actions/charts-data/#createecdfplot"
    },
    {
      "schemaVersion": 3,
      "name": "editECDFPlot",
      "layer": "user-facing",
      "domain": "charts",
      "summary": "Atomically revise an ECDF source or statistical role and rebuild its owned derived rows, path, final-series labels, and guides under the stable owner ID.",
      "signature": "editECDFPlot(options: EditECDFPlotOptions): ChartProgram;",
      "intents": [
        "edit ecdf plot",
        "edit",
        "change",
        "complete chart",
        "chart facade",
        "ECDF plot",
        "empirical cumulative distribution"
      ],
      "lifecycle": "Mutable resource",
      "resources": {
        "prerequisites": [
          "existing ECDF plot",
          "canvas and dataset context"
        ],
        "owns": [],
        "idOptions": [
          "target",
          "data",
          "coordinate"
        ]
      },
      "authoringRoles": [
        "H1",
        "H3"
      ],
      "wraps": [
        "removeMark",
        "createECDFPlot"
      ],
      "editableVia": [
        "editECDFPlot"
      ],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [],
      "inference": [
        {
          "input": "target",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "data",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "coordinate",
          "strategy": "explicit-current-unique-or-error"
        }
      ],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "existing ECDF plot",
          "canvas and dataset context"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "target",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "data",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "coordinate",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "field",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "missing",
          "required": false,
          "type": "\"drop\" | \"error\" | undefined"
        },
        {
          "name": "as",
          "required": false,
          "type": "ECDFOutputFields | undefined"
        },
        {
          "name": "groupBy",
          "required": false,
          "type": "string | false | readonly [string, ...string[]] | undefined"
        },
        {
          "name": "weight",
          "required": false,
          "type": "string | false | undefined"
        },
        {
          "name": "color",
          "required": false,
          "type": "false | LineCategoricalColorChannel | undefined"
        }
      ],
      "callPatterns": [
        "editECDFPlot({ target?, data?, coordinate?, field?, missing?, as?, groupBy?, weight? })"
      ],
      "snippet": "program.editECDFPlot({ field: \"value\" })",
      "errors": [],
      "route": "/reference/actions/charts-data/#editecdfplot"
    },
    {
      "schemaVersion": 3,
      "name": "createIntervalPlot",
      "layer": "user-facing",
      "domain": "charts",
      "summary": "Create center points and matching statistical or explicit intervals from one shared dataset, coordinate, and pair of scales.",
      "signature": "createIntervalPlot(options: CreateIntervalPlotOptions): ChartProgram;",
      "intents": [
        "create interval plot",
        "create",
        "add",
        "complete chart",
        "chart facade",
        "interval plot",
        "center estimate and uncertainty"
      ],
      "lifecycle": "Aggregate create-only",
      "resources": {
        "prerequisites": [
          "canvas and dataset context"
        ],
        "owns": [
          "interval plot"
        ],
        "idOptions": [
          "id",
          "data",
          "coordinate"
        ]
      },
      "authoringRoles": [
        "H0",
        "H1"
      ],
      "wraps": [
        "createErrorBar",
        "createPointMark",
        "encodeX",
        "encodeY"
      ],
      "editableVia": [],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [],
      "inference": [
        {
          "input": "data",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "coordinate",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "omitted optional options",
          "strategy": "documented-default"
        }
      ],
      "completionRequirements": {
        "state": "complete",
        "requires": [
          "canvas and dataset context"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "id",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "data",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "coordinate",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "xOffset",
          "required": false,
          "type": "ErrorBarOffsetChannel | undefined"
        },
        {
          "name": "yOffset",
          "required": false,
          "type": "ErrorBarOffsetChannel | undefined"
        },
        {
          "name": "groupBy",
          "required": false,
          "type": "string | false | undefined"
        },
        {
          "name": "color",
          "required": false,
          "type": "BasicColorChannel | undefined"
        },
        {
          "name": "point",
          "required": false,
          "type": "(StrokeStyleDetails & { radius?: number | undefined; shape?: PointShape | undefined; fill?: string | undefined; opacity?: number | undefined; stroke?: FilledMarkStroke | undefined; strokeWidth?: number | undefined; }) | undefined"
        },
        {
          "name": "errorBar",
          "required": false,
          "type": "IntervalPlotErrorBarOptions | undefined"
        },
        {
          "name": "guides",
          "required": false,
          "type": "false | CartesianGuideOptions | undefined"
        },
        {
          "name": "x",
          "required": true,
          "type": "string | ErrorBarIntervalChannel | ErrorBarPositionChannel"
        },
        {
          "name": "y",
          "required": true,
          "type": "string | ErrorBarIntervalChannel | ErrorBarPositionChannel"
        }
      ],
      "callPatterns": [
        "createIntervalPlot({ x, y })",
        "createIntervalPlot({ x, y, groupBy?, point?, errorBar?, guides? })"
      ],
      "snippet": "program.createIntervalPlot({ x: \"category\", y: \"value\" })",
      "errors": [],
      "route": "/reference/actions/charts-data/#createintervalplot"
    },
    {
      "schemaVersion": 3,
      "name": "createRegressionPlot",
      "layer": "user-facing",
      "domain": "charts",
      "summary": "Create a complete scatter plot with an existing regression data, line, and optional interval-band hierarchy.",
      "signature": "createRegressionPlot(options: CreateRegressionPlotOptions): ChartProgram;",
      "intents": [
        "create regression plot",
        "create",
        "add",
        "complete chart",
        "chart facade",
        "regression plot",
        "scatter relationship with fitted trend"
      ],
      "lifecycle": "Aggregate create-only",
      "resources": {
        "prerequisites": [
          "canvas and dataset context"
        ],
        "owns": [
          "regression plot"
        ],
        "idOptions": [
          "id",
          "data",
          "coordinate"
        ]
      },
      "authoringRoles": [
        "H0",
        "H1"
      ],
      "wraps": [
        "createScatterPlot",
        "createRegression"
      ],
      "editableVia": [],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [],
      "inference": [
        {
          "input": "data",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "coordinate",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "omitted optional options",
          "strategy": "documented-default"
        }
      ],
      "completionRequirements": {
        "state": "complete",
        "requires": [
          "canvas and dataset context"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "id",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "data",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "coordinate",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "x",
          "required": true,
          "type": "RegressionPlotPositionChannel"
        },
        {
          "name": "y",
          "required": true,
          "type": "RegressionPlotPositionChannel"
        },
        {
          "name": "color",
          "required": false,
          "type": "BasicColorChannel | undefined"
        },
        {
          "name": "size",
          "required": false,
          "type": "BasicSizeChannel | undefined"
        },
        {
          "name": "shape",
          "required": false,
          "type": "BasicShapeChannel | undefined"
        },
        {
          "name": "point",
          "required": false,
          "type": "(StrokeStyleDetails & { radius?: number | undefined; shape?: PointShape | undefined; fill?: string | undefined; opacity?: number | undefined; stroke?: FilledMarkStroke | undefined; strokeWidth?: number | undefined; }) | undefined"
        },
        {
          "name": "guides",
          "required": false,
          "type": "false | CartesianGuideOptions | undefined"
        },
        {
          "name": "method",
          "required": false,
          "type": "\"linear\" | \"loess\" | \"polynomial\" | undefined"
        },
        {
          "name": "degree",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "span",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "confidenceMethod",
          "required": false,
          "type": "ConfidenceIntervalMethod | undefined"
        },
        {
          "name": "level",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "confidence",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "interval",
          "required": false,
          "type": "false | RegressionInterval | undefined"
        },
        {
          "name": "predict",
          "required": false,
          "type": "RegressionPredictOptions | undefined"
        },
        {
          "name": "groupBy",
          "required": false,
          "type": "string | false | undefined"
        },
        {
          "name": "line",
          "required": false,
          "type": "(StrokeStyleDetails & { strokeWidth?: number | undefined; curve?: CurveInterpolation | undefined; }) | undefined"
        },
        {
          "name": "sourceBinding",
          "required": false,
          "type": "\"fixed\" | \"follow\" | undefined"
        },
        {
          "name": "missing",
          "required": false,
          "type": "\"drop\" | \"error\" | undefined"
        },
        {
          "name": "band",
          "required": false,
          "type": "false | RegressionBandOptions | undefined"
        }
      ],
      "callPatterns": [
        "createRegressionPlot({ x, y })",
        "createRegressionPlot({ x, y, groupBy?, method?, band?, line?, guides? })"
      ],
      "snippet": "program.createRegressionPlot({ x: \"x\", y: \"y\", groupBy: false })",
      "errors": [],
      "route": "/reference/actions/charts-data/#createregressionplot"
    },
    {
      "schemaVersion": 3,
      "name": "createLinePlot",
      "layer": "user-facing",
      "domain": "charts",
      "summary": "Create a complete Cartesian line chart.",
      "signature": "createLinePlot(options: CreateLinePlotOptions): ChartProgram;",
      "intents": [
        "create line plot",
        "create",
        "add",
        "complete chart",
        "chart facade",
        "line chart",
        "ordered trend"
      ],
      "lifecycle": "Aggregate create-only",
      "resources": {
        "prerequisites": [
          "canvas and dataset context"
        ],
        "owns": [
          "line chart"
        ],
        "idOptions": [
          "id",
          "data",
          "coordinate"
        ]
      },
      "authoringRoles": [
        "H0"
      ],
      "wraps": [
        "createLineMark",
        "encodeX",
        "encodeY",
        "encodeGroup",
        "encodeColor",
        "encodeStrokeDash",
        "createGuides"
      ],
      "editableVia": [],
      "supports": {
        "entryPoints": [
          "default",
          "basic"
        ]
      },
      "units": [],
      "inference": [
        {
          "input": "data",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "coordinate",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "omitted optional options",
          "strategy": "documented-default"
        }
      ],
      "completionRequirements": {
        "state": "complete",
        "requires": [
          "canvas and dataset context"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "id",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "data",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "coordinate",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "x",
          "required": true,
          "type": "LineXPositionChannel"
        },
        {
          "name": "y",
          "required": true,
          "type": "LineYPositionChannel"
        },
        {
          "name": "color",
          "required": false,
          "type": "LineCategoricalColorChannel | undefined"
        },
        {
          "name": "groupBy",
          "required": false,
          "type": "string | readonly [string, ...string[]] | undefined"
        },
        {
          "name": "strokeDash",
          "required": false,
          "type": "Omit<{ field: string; value?: undefined; target?: string | undefined; fieldType?: \"nominal\" | undefined; scale?: DashScaleOptions | undefined; }, \"target\"> | Omit<...> | undefined"
        },
        {
          "name": "line",
          "required": false,
          "type": "(StrokeStyleDetails & { strokeWidth?: number | undefined; curve?: CurveInterpolation | undefined; stroke?: string | undefined; opacity?: number | undefined; closed?: false | undefined; }) | undefined"
        },
        {
          "name": "guides",
          "required": false,
          "type": "false | CPathGuides | undefined"
        }
      ],
      "callPatterns": [
        "createLinePlot({ x, y, id?, data?, coordinate?, color?, groupBy?, strokeDash? })"
      ],
      "snippet": "program.createLinePlot({ x: \"x\", y: \"y\" })",
      "errors": [],
      "route": "/reference/actions/charts-data/#createlineplot"
    },
    {
      "schemaVersion": 3,
      "name": "createPolarScatterPlot",
      "layer": "user-facing",
      "domain": "charts",
      "summary": "Draws a complete Polar scatter plot that maps observations to angular and radial position while keeping glyph size independent.",
      "signature": "createPolarScatterPlot(options: CreatePolarScatterPlotOptions): ChartProgram;",
      "intents": [
        "create polar scatter plot",
        "create",
        "add",
        "complete chart",
        "chart facade",
        "polar scatter plot",
        "angular and radial relationship"
      ],
      "lifecycle": "Aggregate create-only",
      "resources": {
        "prerequisites": [
          "canvas and dataset context"
        ],
        "owns": [
          "polar scatter plot"
        ],
        "idOptions": [
          "id",
          "data",
          "coordinate"
        ]
      },
      "authoringRoles": [
        "H0"
      ],
      "wraps": [
        "createPointMark",
        "encodeTheta",
        "encodeR",
        "encodePointRadius"
      ],
      "editableVia": [],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [],
      "inference": [
        {
          "input": "data",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "coordinate",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "omitted optional options",
          "strategy": "documented-default"
        }
      ],
      "completionRequirements": {
        "state": "complete",
        "requires": [
          "canvas and dataset context"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "id",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "data",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "coordinate",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "theta",
          "required": true,
          "type": "PolarThetaChannel"
        },
        {
          "name": "radius",
          "required": true,
          "type": "PolarRadiusChannel"
        },
        {
          "name": "color",
          "required": false,
          "type": "BasicColorChannel | undefined"
        },
        {
          "name": "size",
          "required": false,
          "type": "BasicSizeChannel | undefined"
        },
        {
          "name": "shape",
          "required": false,
          "type": "BasicShapeChannel | undefined"
        },
        {
          "name": "point",
          "required": false,
          "type": "(StrokeStyleDetails & { radius?: number | undefined; shape?: PointShape | undefined; fill?: string | undefined; opacity?: number | undefined; stroke?: FilledMarkStroke | undefined; strokeWidth?: number | undefined; }) | undefined"
        },
        {
          "name": "guides",
          "required": false,
          "type": "false | PolarPointGuideOptions | undefined"
        }
      ],
      "callPatterns": [
        "createPolarScatterPlot({ theta, radius })",
        "createPolarScatterPlot({ theta, radius, color?, size?, shape?, guides? })"
      ],
      "snippet": "program.createPolarScatterPlot({ theta: \"angle\", radius: \"distance\" })",
      "errors": [],
      "route": "/reference/actions/charts-data/#createpolarscatterplot"
    },
    {
      "schemaVersion": 3,
      "name": "createPolarLinePlot",
      "layer": "user-facing",
      "domain": "charts",
      "summary": "Draws a complete Polar line plot that connects angular and radial observations as open or explicitly closed paths.",
      "signature": "createPolarLinePlot(options: CreatePolarLinePlotOptions): ChartProgram;",
      "intents": [
        "create polar line plot",
        "create",
        "add",
        "complete chart",
        "chart facade",
        "polar line plot",
        "angular and radial trend"
      ],
      "lifecycle": "Aggregate create-only",
      "resources": {
        "prerequisites": [
          "canvas and dataset context"
        ],
        "owns": [
          "polar line plot"
        ],
        "idOptions": [
          "id",
          "data",
          "coordinate"
        ]
      },
      "authoringRoles": [
        "H0"
      ],
      "wraps": [
        "createLineMark",
        "encodeTheta",
        "encodeR"
      ],
      "editableVia": [],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [],
      "inference": [
        {
          "input": "data",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "coordinate",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "omitted optional options",
          "strategy": "documented-default"
        }
      ],
      "completionRequirements": {
        "state": "complete",
        "requires": [
          "canvas and dataset context"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "id",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "data",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "coordinate",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "theta",
          "required": true,
          "type": "PolarThetaChannel"
        },
        {
          "name": "radius",
          "required": true,
          "type": "PolarRadiusChannel"
        },
        {
          "name": "color",
          "required": false,
          "type": "LineCategoricalColorChannel | undefined"
        },
        {
          "name": "groupBy",
          "required": false,
          "type": "string | readonly [string, ...string[]] | undefined"
        },
        {
          "name": "strokeDash",
          "required": false,
          "type": "Omit<{ field: string; value?: undefined; target?: string | undefined; fieldType?: \"nominal\" | undefined; scale?: DashScaleOptions | undefined; }, \"target\"> | Omit<...> | undefined"
        },
        {
          "name": "line",
          "required": false,
          "type": "(Omit<StrokeStyleDetails & { strokeWidth?: number | undefined; curve?: CurveInterpolation | undefined; stroke?: string | undefined; opacity?: number | undefined; closed?: false | undefined; }, \"closed\" | \"curve\"> & { ...; }) | undefined"
        },
        {
          "name": "guides",
          "required": false,
          "type": "false | PolarPathGuideOptions | undefined"
        }
      ],
      "callPatterns": [
        "createPolarLinePlot({ theta, radius })",
        "createPolarLinePlot({ theta, radius, groupBy?, color?, strokeDash?, guides? })"
      ],
      "snippet": "program.createPolarLinePlot({ theta: \"angle\", radius: \"distance\" })",
      "errors": [],
      "route": "/reference/actions/charts-data/#createpolarlineplot"
    },
    {
      "schemaVersion": 3,
      "name": "createRadarPlot",
      "layer": "user-facing",
      "domain": "charts",
      "summary": "Draws a complete Radar plot from long category-value rows or explicitly selected wide fields as closed Polar profiles.",
      "signature": "createRadarPlot(options: CreateRadarPlotOptions): ChartProgram;",
      "intents": [
        "create radar plot",
        "create",
        "add",
        "complete chart",
        "chart facade",
        "radar plot",
        "radar chart"
      ],
      "lifecycle": "Aggregate create-only",
      "resources": {
        "prerequisites": [
          "canvas and dataset context"
        ],
        "owns": [
          "radar plot"
        ],
        "idOptions": [
          "id",
          "data",
          "coordinate"
        ]
      },
      "authoringRoles": [
        "H0"
      ],
      "wraps": [
        "createPolarLinePlot"
      ],
      "editableVia": [],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [],
      "inference": [
        {
          "input": "data",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "coordinate",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "omitted optional options",
          "strategy": "documented-default"
        }
      ],
      "completionRequirements": {
        "state": "complete",
        "requires": [
          "canvas and dataset context"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "id",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "data",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "coordinate",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "groupBy",
          "required": false,
          "type": "string | readonly [string, ...string[]] | undefined"
        },
        {
          "name": "order",
          "required": false,
          "type": "readonly [RadarCategoryValue, RadarCategoryValue, RadarCategoryValue, ...RadarCategoryValue[]] | undefined"
        },
        {
          "name": "color",
          "required": false,
          "type": "LineCategoricalColorChannel | undefined"
        },
        {
          "name": "strokeDash",
          "required": false,
          "type": "Omit<{ field: string; value?: undefined; target?: string | undefined; fieldType?: \"nominal\" | undefined; scale?: DashScaleOptions | undefined; }, \"target\"> | Omit<...> | undefined"
        },
        {
          "name": "line",
          "required": false,
          "type": "(Omit<StrokeStyleDetails & { strokeWidth?: number | undefined; curve?: CurveInterpolation | undefined; stroke?: string | undefined; opacity?: number | undefined; closed?: false | undefined; }, \"closed\" | \"curve\"> & { ...; }) | undefined"
        },
        {
          "name": "guides",
          "required": false,
          "type": "false | RadarGuideOptions | undefined"
        },
        {
          "name": "category",
          "required": false,
          "type": "RadarCategoryChannel | undefined"
        },
        {
          "name": "value",
          "required": false,
          "type": "PolarRadiusChannel | undefined"
        },
        {
          "name": "wide",
          "required": false,
          "type": "RadarWideOptions | undefined"
        }
      ],
      "callPatterns": [
        "createRadarPlot({ category, value, groupBy?, order? })",
        "createRadarPlot({ wide: { fields, as? }, groupBy?, order?, color?, strokeDash?, guides? })"
      ],
      "snippet": "program.createRadarPlot({ category: \"category\", value: \"value\" })",
      "errors": [],
      "route": "/reference/actions/charts-data/#createradarplot"
    },
    {
      "schemaVersion": 3,
      "name": "createRugPlot",
      "layer": "user-facing",
      "domain": "charts",
      "summary": "Create a one-dimensional distribution from quantitative or temporal observations.",
      "signature": "createRugPlot(options: CreateRugPlotOptions): ChartProgram;",
      "intents": [
        "create rug plot",
        "create",
        "add",
        "complete chart",
        "chart facade",
        "rug plot",
        "one-dimensional tick distribution"
      ],
      "lifecycle": "Aggregate create-only",
      "resources": {
        "prerequisites": [
          "canvas and dataset context"
        ],
        "owns": [
          "rug plot"
        ],
        "idOptions": [
          "id",
          "data",
          "coordinate"
        ]
      },
      "authoringRoles": [
        "H0"
      ],
      "wraps": [
        "createTickMark",
        "encodeX",
        "encodeY",
        "encodeAngle"
      ],
      "editableVia": [],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [],
      "inference": [
        {
          "input": "data",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "coordinate",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "omitted optional options",
          "strategy": "documented-default"
        }
      ],
      "completionRequirements": {
        "state": "complete",
        "requires": [
          "canvas and dataset context"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "id",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "data",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "coordinate",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "tick",
          "required": false,
          "type": "RugTickOptions | undefined"
        },
        {
          "name": "guides",
          "required": false,
          "type": "false | RugGuideOptions | undefined"
        },
        {
          "name": "x",
          "required": false,
          "type": "RugMeasureChannel | undefined"
        },
        {
          "name": "y",
          "required": false,
          "type": "RugMeasureChannel | undefined"
        },
        {
          "name": "edge",
          "required": true,
          "type": "\"bottom\" | \"left\" | \"right\" | \"top\""
        }
      ],
      "callPatterns": [
        "createRugPlot({ x, edge: \"top\" | \"bottom\", tick?, guides? })",
        "createRugPlot({ y, edge: \"left\" | \"right\", tick?, guides? })"
      ],
      "snippet": "program.createRugPlot({ x: \"value\", edge: \"bottom\" })",
      "errors": [],
      "route": "/reference/actions/charts-data/#createrugplot"
    },
    {
      "schemaVersion": 3,
      "name": "createStripPlot",
      "layer": "user-facing",
      "domain": "charts",
      "summary": "Create a point strip from one measure or from one measure plus one categorical slot.",
      "signature": "createStripPlot(options: CreateStripPlotOptions): ChartProgram;",
      "intents": [
        "create strip plot",
        "create",
        "add",
        "complete chart",
        "chart facade",
        "strip plot",
        "jittered observations"
      ],
      "lifecycle": "Aggregate create-only",
      "resources": {
        "prerequisites": [
          "canvas and dataset context"
        ],
        "owns": [
          "strip plot"
        ],
        "idOptions": [
          "id",
          "data",
          "coordinate"
        ]
      },
      "authoringRoles": [
        "H0"
      ],
      "wraps": [
        "createPointMark",
        "encodeX",
        "encodeY",
        "encodePointRadius"
      ],
      "editableVia": [],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [],
      "inference": [
        {
          "input": "data",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "coordinate",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "omitted optional options",
          "strategy": "documented-default"
        }
      ],
      "completionRequirements": {
        "state": "complete",
        "requires": [
          "canvas and dataset context"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "id",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "data",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "coordinate",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "color",
          "required": false,
          "type": "BasicColorChannel | undefined"
        },
        {
          "name": "size",
          "required": false,
          "type": "BasicSizeChannel | undefined"
        },
        {
          "name": "shape",
          "required": false,
          "type": "BasicShapeChannel | undefined"
        },
        {
          "name": "point",
          "required": false,
          "type": "(StrokeStyleDetails & { radius?: number | undefined; shape?: PointShape | undefined; fill?: string | undefined; opacity?: number | undefined; stroke?: FilledMarkStroke | undefined; strokeWidth?: number | undefined; }) | undefined"
        },
        {
          "name": "guides",
          "required": false,
          "type": "false | CartesianGuideOptions | undefined"
        },
        {
          "name": "x",
          "required": true,
          "type": "string | { field: string; fieldType?: \"quantitative\" | undefined; temporalUnit?: undefined; scale?: NonPointQuantitativePositionScaleOptions | undefined; } | { ...; } | { ...; }"
        },
        {
          "name": "y",
          "required": false,
          "type": "string | { field: string; fieldType?: \"quantitative\" | undefined; temporalUnit?: undefined; scale?: NonPointQuantitativePositionScaleOptions | undefined; } | { ...; } | { ...; } | undefined"
        },
        {
          "name": "jitter",
          "required": false,
          "type": "false | StripBandJitterOptions | StripPixelJitterOptions | undefined"
        }
      ],
      "callPatterns": [
        "createStripPlot({ x, point?, jitter?, guides? })",
        "createStripPlot({ x, y, color?, size?, shape?, point?, jitter?, guides? })"
      ],
      "snippet": "program.createStripPlot({ x: \"value\" })",
      "errors": [],
      "route": "/reference/actions/charts-data/#createstripplot"
    },
    {
      "schemaVersion": 3,
      "name": "createBeeswarmPlot",
      "layer": "user-facing",
      "domain": "charts",
      "summary": "Create a role-safe category/measure Point chart and deterministically pack actual glyph extents within each category slot.",
      "signature": "createBeeswarmPlot(options: CreateBeeswarmPlotOptions): ChartProgram;",
      "intents": [
        "create beeswarm plot",
        "create",
        "add",
        "complete chart",
        "chart facade",
        "beeswarm plot",
        "collision-free grouped observations"
      ],
      "lifecycle": "Aggregate create-only",
      "resources": {
        "prerequisites": [
          "canvas and dataset context"
        ],
        "owns": [
          "beeswarm plot"
        ],
        "idOptions": [
          "id",
          "data",
          "coordinate"
        ]
      },
      "authoringRoles": [
        "H0"
      ],
      "wraps": [
        "createStripPlot",
        "packPoints"
      ],
      "editableVia": [],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [],
      "inference": [
        {
          "input": "data",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "coordinate",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "omitted optional options",
          "strategy": "documented-default"
        }
      ],
      "completionRequirements": {
        "state": "complete",
        "requires": [
          "canvas and dataset context"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "id",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "data",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "coordinate",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "color",
          "required": false,
          "type": "BasicColorChannel | undefined"
        },
        {
          "name": "size",
          "required": false,
          "type": "BasicSizeChannel | undefined"
        },
        {
          "name": "shape",
          "required": false,
          "type": "BasicShapeChannel | undefined"
        },
        {
          "name": "point",
          "required": false,
          "type": "(StrokeStyleDetails & { radius?: number | undefined; shape?: PointShape | undefined; fill?: string | undefined; opacity?: number | undefined; stroke?: FilledMarkStroke | undefined; strokeWidth?: number | undefined; }) | undefined"
        },
        {
          "name": "packing",
          "required": false,
          "type": "false | BeeswarmPackingOptions | undefined"
        },
        {
          "name": "guides",
          "required": false,
          "type": "false | CartesianGuideOptions | undefined"
        },
        {
          "name": "x",
          "required": true,
          "type": "string | { field: string; fieldType?: \"quantitative\" | undefined; temporalUnit?: undefined; scale?: NonPointQuantitativePositionScaleOptions | undefined; } | { ...; } | { ...; }"
        },
        {
          "name": "y",
          "required": true,
          "type": "string | { field: string; fieldType?: \"quantitative\" | undefined; temporalUnit?: undefined; scale?: NonPointQuantitativePositionScaleOptions | undefined; } | { ...; } | { ...; }"
        }
      ],
      "callPatterns": [
        "createBeeswarmPlot({ x, y, packing?, guides? })",
        "createBeeswarmPlot({ x, y, color?, size?, shape?, point?, packing?, guides? })"
      ],
      "snippet": "program.createBeeswarmPlot({ x: { field: \"category\", fieldType: \"nominal\" }, y: \"value\" })",
      "errors": [],
      "route": "/reference/actions/charts-data/#createbeeswarmplot"
    },
    {
      "schemaVersion": 3,
      "name": "createRaincloudPlot",
      "layer": "user-facing",
      "domain": "charts",
      "summary": "Create a shared-source distribution composite from an optional half Violin, Box or Interval summary, and Strip or Beeswarm raw points.",
      "signature": "createRaincloudPlot(options: CreateRaincloudPlotOptions): ChartProgram;",
      "intents": [
        "create raincloud plot",
        "create",
        "add",
        "complete chart",
        "chart facade",
        "raincloud plot",
        "half density with summary and raw observations"
      ],
      "lifecycle": "Mutable resource",
      "resources": {
        "prerequisites": [
          "canvas and dataset context"
        ],
        "owns": [
          "raincloud plot"
        ],
        "idOptions": [
          "id",
          "data",
          "coordinate"
        ]
      },
      "authoringRoles": [
        "H0",
        "H1"
      ],
      "wraps": [
        "createViolinPlot",
        "createBoxPlot",
        "createBeeswarmPlot"
      ],
      "editableVia": [
        "editRaincloudPlot"
      ],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [],
      "inference": [
        {
          "input": "data",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "coordinate",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "omitted optional options",
          "strategy": "documented-default"
        }
      ],
      "completionRequirements": {
        "state": "complete",
        "requires": [
          "canvas and dataset context"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "id",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "data",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "coordinate",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "category",
          "required": true,
          "type": "RaincloudCategoryChannel"
        },
        {
          "name": "value",
          "required": true,
          "type": "RaincloudValueChannel"
        },
        {
          "name": "orientation",
          "required": false,
          "type": "\"horizontal\" | \"vertical\" | undefined"
        },
        {
          "name": "side",
          "required": false,
          "type": "\"after\" | \"before\" | undefined"
        },
        {
          "name": "density",
          "required": false,
          "type": "false | RaincloudDensityOptions | undefined"
        },
        {
          "name": "summary",
          "required": false,
          "type": "false | RaincloudSummaryOptions | undefined"
        },
        {
          "name": "points",
          "required": false,
          "type": "false | RaincloudPointsOptions | undefined"
        },
        {
          "name": "color",
          "required": false,
          "type": "LineCategoricalColorChannel | undefined"
        },
        {
          "name": "guides",
          "required": false,
          "type": "false | CartesianCategoricalGuideOptions | undefined"
        }
      ],
      "callPatterns": [
        "createRaincloudPlot({ category, value })",
        "createRaincloudPlot({ category, value, density?, summary?, points?, color?, guides? })"
      ],
      "snippet": "program.createRaincloudPlot({ category: { field: \"category\", fieldType: \"nominal\" }, value: \"value\" })",
      "errors": [],
      "route": "/reference/actions/charts-data/#createraincloudplot"
    },
    {
      "schemaVersion": 3,
      "name": "editRaincloudPlot",
      "layer": "user-facing",
      "domain": "charts",
      "summary": "Atomically revise one Raincloud's shared source, roles, orientation, side, and component modes while preserving its parent and child IDs.",
      "signature": "editRaincloudPlot(options: EditRaincloudPlotOptions): ChartProgram;",
      "intents": [
        "edit raincloud plot",
        "edit",
        "change",
        "complete chart",
        "chart facade",
        "raincloud plot",
        "half density with summary and raw observations"
      ],
      "lifecycle": "Mutable resource",
      "resources": {
        "prerequisites": [
          "existing raincloud plot",
          "canvas and dataset context"
        ],
        "owns": [],
        "idOptions": [
          "target",
          "data"
        ]
      },
      "authoringRoles": [
        "H1",
        "H3"
      ],
      "wraps": [
        "removeMark",
        "editScale",
        "createViolinPlot",
        "createIntervalPlot",
        "createStripPlot"
      ],
      "editableVia": [
        "editRaincloudPlot"
      ],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [],
      "inference": [
        {
          "input": "target",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "data",
          "strategy": "explicit-current-unique-or-error"
        }
      ],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "existing raincloud plot",
          "canvas and dataset context"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "target",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "data",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "category",
          "required": false,
          "type": "RaincloudCategoryChannel | undefined"
        },
        {
          "name": "value",
          "required": false,
          "type": "RaincloudValueChannel | undefined"
        },
        {
          "name": "orientation",
          "required": false,
          "type": "\"horizontal\" | \"vertical\" | undefined"
        },
        {
          "name": "side",
          "required": false,
          "type": "\"after\" | \"before\" | undefined"
        },
        {
          "name": "density",
          "required": false,
          "type": "false | RaincloudDensityOptions | undefined"
        },
        {
          "name": "summary",
          "required": false,
          "type": "false | RaincloudSummaryOptions | undefined"
        },
        {
          "name": "points",
          "required": false,
          "type": "false | RaincloudPointsOptions | undefined"
        },
        {
          "name": "color",
          "required": false,
          "type": "false | LineCategoricalColorChannel | undefined"
        }
      ],
      "callPatterns": [
        "editRaincloudPlot({ target?, data?, category?, value? })",
        "editRaincloudPlot({ target?, orientation?, side?, density?, summary?, points?, color? })"
      ],
      "snippet": "program.editRaincloudPlot({ target: \"raincloudPlot\", side: \"after\" })",
      "errors": [],
      "route": "/reference/actions/charts-data/#editraincloudplot"
    },
    {
      "schemaVersion": 3,
      "name": "createBarPlot",
      "layer": "user-facing",
      "domain": "charts",
      "summary": "Create a complete vertical, horizontal, aggregate, ranged, grouped, or stacked bar chart through the existing bar policies.",
      "signature": "createBarPlot(options: CreateBarPlotOptions): ChartProgram;",
      "intents": [
        "create bar plot",
        "create",
        "add",
        "complete chart",
        "chart facade",
        "bar chart",
        "category comparison"
      ],
      "lifecycle": "Aggregate create-only",
      "resources": {
        "prerequisites": [
          "canvas and dataset context"
        ],
        "owns": [
          "bar chart"
        ],
        "idOptions": [
          "id",
          "data",
          "coordinate"
        ]
      },
      "authoringRoles": [
        "H0"
      ],
      "wraps": [
        "createBarMark",
        "encodeY",
        "encodeX",
        "encodeColor",
        "encodeBarWidth",
        "createGuides"
      ],
      "editableVia": [],
      "supports": {
        "entryPoints": [
          "default",
          "basic"
        ]
      },
      "units": [
        {
          "path": "width",
          "unit": "logical-pixel"
        },
        {
          "path": "width",
          "unit": "band-fraction"
        }
      ],
      "inference": [
        {
          "input": "data",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "coordinate",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "omitted optional options",
          "strategy": "documented-default"
        }
      ],
      "completionRequirements": {
        "state": "complete",
        "requires": [
          "canvas and dataset context"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "id",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "data",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "coordinate",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "x",
          "required": true,
          "type": "BandPositionChannel"
        },
        {
          "name": "y",
          "required": true,
          "type": "BarYPositionChannel"
        },
        {
          "name": "color",
          "required": false,
          "type": "BarColorChannel | undefined"
        },
        {
          "name": "width",
          "required": false,
          "type": "Omit<BarWidthOptions, \"target\"> | undefined"
        },
        {
          "name": "bar",
          "required": false,
          "type": "(StrokeStyleDetails & { cornerRadius?: number | undefined; } & { fill?: string | undefined; opacity?: number | undefined; stroke?: FilledMarkStroke | undefined; strokeWidth?: number | undefined; }) | undefined"
        },
        {
          "name": "guides",
          "required": false,
          "type": "false | ColorGuides | undefined"
        }
      ],
      "callPatterns": [
        "createBarPlot({ x, y, width?, color? })",
        "createBarPlot({ x, y, stack?, groupBy?, guides? })"
      ],
      "snippet": "program.createBarPlot({ x: \"x\", y: \"y\" })",
      "errors": [],
      "route": "/reference/actions/charts-data/#createbarplot"
    },
    {
      "schemaVersion": 3,
      "name": "createHistogram",
      "layer": "user-facing",
      "domain": "charts",
      "summary": "Create a bar layer with atomic bin and count encodings.",
      "signature": "createHistogram(options: CreateHistogramOptions): ChartProgram;",
      "intents": [
        "create histogram",
        "create",
        "add",
        "complete chart",
        "chart facade",
        "histogram",
        "one-dimensional distribution"
      ],
      "lifecycle": "Aggregate create-only",
      "resources": {
        "prerequisites": [
          "canvas and dataset context"
        ],
        "owns": [
          "histogram"
        ],
        "idOptions": [
          "xScale",
          "yScale",
          "id",
          "data",
          "coordinate"
        ]
      },
      "authoringRoles": [
        "H0",
        "H1"
      ],
      "wraps": [
        "createBarMark",
        "encodeHistogram",
        "encodeColor",
        "createGuides"
      ],
      "editableVia": [],
      "supports": {
        "entryPoints": [
          "default",
          "basic"
        ]
      },
      "units": [
        {
          "path": "maxBins",
          "unit": "count"
        }
      ],
      "inference": [
        {
          "input": "xScale",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "yScale",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "data",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "coordinate",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "omitted optional options",
          "strategy": "documented-default"
        }
      ],
      "completionRequirements": {
        "state": "complete",
        "requires": [
          "canvas and dataset context"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "xScale",
          "required": false,
          "type": "NonPointQuantitativePositionScaleOptions | undefined"
        },
        {
          "name": "yScale",
          "required": false,
          "type": "NonPointZeroSupportingPositionScaleOptions | undefined"
        },
        {
          "name": "weight",
          "required": false,
          "type": "StatisticalWeight | undefined"
        },
        {
          "name": "maxBins",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "binStep",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "binBoundaries",
          "required": false,
          "type": "readonly [number, number, ...number[]] | undefined"
        },
        {
          "name": "stack",
          "required": false,
          "type": "StackMode | undefined"
        },
        {
          "name": "id",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "data",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "coordinate",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "field",
          "required": true,
          "type": "string"
        },
        {
          "name": "color",
          "required": false,
          "type": "HistogramCategoricalColorChannel | undefined"
        },
        {
          "name": "bar",
          "required": false,
          "type": "(StrokeStyleDetails & { cornerRadius?: number | undefined; } & { fill?: string | undefined; opacity?: number | undefined; stroke?: FilledMarkStroke | undefined; strokeWidth?: number | undefined; }) | undefined"
        },
        {
          "name": "guides",
          "required": false,
          "type": "false | CartesianCategoricalGuideOptions | undefined"
        }
      ],
      "callPatterns": [
        "createHistogram({ field, maxBins? | binStep? | binBoundaries? })",
        "createHistogram({ field, color?, stack?, guides? })"
      ],
      "snippet": "program.createHistogram({ field: \"value\" })",
      "errors": [],
      "route": "/reference/actions/charts-data/#createhistogram"
    },
    {
      "schemaVersion": 3,
      "name": "createHeatmap",
      "layer": "user-facing",
      "domain": "charts",
      "summary": "Create one rect cell per valid pre-gridded row, or bin raw quantitative x/y rows into ranged cells colored by count.",
      "signature": "createHeatmap(options: CreateHeatmapOptions): ChartProgram;",
      "intents": [
        "create heatmap",
        "create",
        "add",
        "complete chart",
        "chart facade",
        "heatmap",
        "two-dimensional distribution"
      ],
      "lifecycle": "Aggregate create-only",
      "resources": {
        "prerequisites": [
          "canvas and dataset context"
        ],
        "owns": [
          "heatmap"
        ],
        "idOptions": [
          "id",
          "data",
          "coordinate"
        ]
      },
      "authoringRoles": [
        "H0"
      ],
      "wraps": [
        "createRectMark",
        "encodeX",
        "encodeY",
        "encodeColor",
        "createGuides",
        "createBin2DData",
        "encodeX2",
        "encodeY2"
      ],
      "editableVia": [],
      "supports": {
        "entryPoints": [
          "default",
          "basic"
        ]
      },
      "units": [],
      "inference": [
        {
          "input": "data",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "coordinate",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "omitted optional options",
          "strategy": "documented-default"
        }
      ],
      "completionRequirements": {
        "state": "complete",
        "requires": [
          "canvas and dataset context"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "x",
          "required": true,
          "type": "BinnedHeatmapPositionChannel | HeatmapCategoryPositionChannel"
        },
        {
          "name": "y",
          "required": true,
          "type": "BinnedHeatmapPositionChannel | HeatmapCategoryPositionChannel"
        },
        {
          "name": "bin",
          "required": false,
          "type": "HeatmapBinOptions | undefined"
        },
        {
          "name": "color",
          "required": false,
          "type": "BinnedHeatmapColorOptions | RectColorChannel | undefined"
        },
        {
          "name": "id",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "data",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "coordinate",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "rect",
          "required": false,
          "type": "(StrokeStyleDetails & { cornerRadius?: number | undefined; } & { opacity?: number | undefined; stroke?: string | false | undefined; strokeWidth?: number | undefined; }) | undefined"
        },
        {
          "name": "guides",
          "required": false,
          "type": "false | CartesianGuideOptions | undefined"
        }
      ],
      "callPatterns": [
        "createHeatmap({ x, y, color })",
        "createHeatmap({ x, y, bin, color? })"
      ],
      "snippet": "program.createHeatmap({ x: \"x\", y: \"y\", color: \"value\" })",
      "errors": [
        {
          "error": "Raw rows are requested without a bin object or pre-gridded rows omit color.",
          "fix": "Use bin for raw x/y rows, or provide x, y, and color for pre-gridded rows."
        }
      ],
      "route": "/reference/actions/charts-data/#createheatmap"
    },
    {
      "schemaVersion": 3,
      "name": "createParallelCoordinates",
      "layer": "user-facing",
      "domain": "charts",
      "summary": "Create one open line path per source row across an ordered list of dimension- local scales and axes.",
      "signature": "createParallelCoordinates(options: CreateParallelCoordinatesOptions): ChartProgram;",
      "intents": [
        "create parallel coordinates",
        "create",
        "add",
        "complete chart",
        "chart facade",
        "parallel coordinates",
        "multiple dimensions"
      ],
      "lifecycle": "Aggregate create-only",
      "resources": {
        "prerequisites": [
          "canvas and dataset context"
        ],
        "owns": [
          "parallel coordinates"
        ],
        "idOptions": [
          "id",
          "data",
          "coordinate"
        ]
      },
      "authoringRoles": [
        "H0"
      ],
      "wraps": [
        "createCoordinate",
        "createLineMark",
        "encodeParallelCoordinates",
        "encodeColor",
        "encodeStrokeDash",
        "createGuides"
      ],
      "editableVia": [],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [],
      "inference": [
        {
          "input": "data",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "coordinate",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "omitted optional options",
          "strategy": "documented-default"
        }
      ],
      "completionRequirements": {
        "state": "complete",
        "requires": [
          "canvas and dataset context"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "id",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "data",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "coordinate",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "dimensions",
          "required": true,
          "type": "readonly [ParallelDimension, ParallelDimension, ...ParallelDimension[]]"
        },
        {
          "name": "key",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "missing",
          "required": false,
          "type": "ParallelMissingPolicy | undefined"
        },
        {
          "name": "color",
          "required": false,
          "type": "LineCategoricalColorChannel | undefined"
        },
        {
          "name": "strokeDash",
          "required": false,
          "type": "Omit<{ field: string; value?: undefined; target?: string | undefined; fieldType?: \"nominal\" | undefined; scale?: DashScaleOptions | undefined; }, \"target\"> | Omit<...> | undefined"
        },
        {
          "name": "line",
          "required": false,
          "type": "(StrokeStyleDetails & { strokeWidth?: number | undefined; stroke?: string | undefined; opacity?: number | undefined; curve?: \"linear\" | undefined; closed?: false | undefined; }) | undefined"
        },
        {
          "name": "guides",
          "required": false,
          "type": "false | ParallelGuideOptions | undefined"
        }
      ],
      "callPatterns": [
        "createParallelCoordinates({ dimensions, id?, data?, coordinate?, key?, missing?, color?, strokeDash? })"
      ],
      "snippet": "program.createParallelCoordinates({ dimensions: [\"a\", \"b\"] })",
      "errors": [],
      "route": "/reference/actions/charts-data/#createparallelcoordinates"
    },
    {
      "schemaVersion": 3,
      "name": "createRectMark",
      "layer": "user-facing",
      "domain": "marks",
      "summary": "Create a semantic rect mark and empty rect collection.",
      "signature": "createRectMark(options?: RectMarkOptions): ChartProgram;",
      "intents": [
        "create rect mark",
        "create",
        "add",
        "graphical mark",
        "mark appearance",
        "rectangle mark",
        "heatmap cell"
      ],
      "lifecycle": "Mutable resource",
      "resources": {
        "prerequisites": [
          "dataset and coordinate context"
        ],
        "owns": [
          "rectangle mark"
        ],
        "idOptions": [
          "id",
          "data"
        ]
      },
      "authoringRoles": [
        "H2"
      ],
      "wraps": [
        "editSemantic",
        "createGraphics",
        "editRectMark"
      ],
      "editableVia": [
        "editRectMark"
      ],
      "supports": {
        "entryPoints": [
          "default",
          "basic"
        ]
      },
      "units": [
        {
          "path": "opacity",
          "unit": "probability"
        },
        {
          "path": "strokeWidth",
          "unit": "logical-pixel"
        }
      ],
      "inference": [
        {
          "input": "data",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "omitted optional options",
          "strategy": "documented-default"
        }
      ],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "dataset and coordinate context"
        ],
        "allowsEmpty": true
      },
      "options": [
        {
          "name": "id",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "data",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "missing",
          "required": false,
          "type": "\"error\" | \"skip\" | undefined"
        },
        {
          "name": "fill",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "opacity",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "stroke",
          "required": false,
          "type": "string | false | undefined"
        },
        {
          "name": "strokeWidth",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "lineCap",
          "required": false,
          "type": "\"butt\" | \"round\" | \"square\" | undefined"
        },
        {
          "name": "lineJoin",
          "required": false,
          "type": "\"bevel\" | \"miter\" | \"round\" | undefined"
        },
        {
          "name": "miterLimit",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "cornerRadius",
          "required": false,
          "type": "number | undefined"
        }
      ],
      "callPatterns": [
        "createRectMark({ id?, data?, missing?, fill?, opacity?, stroke?, strokeWidth?, lineCap? })"
      ],
      "snippet": "program.createRectMark({})",
      "errors": [],
      "route": "/reference/actions/marks/#createrectmark"
    },
    {
      "schemaVersion": 3,
      "name": "editRectMark",
      "layer": "user-facing",
      "domain": "marks",
      "summary": "Edit rect appearance and rematerialize complete cells.",
      "signature": "editRectMark(options: EditRectMarkOptions): ChartProgram;",
      "intents": [
        "edit rect mark",
        "edit",
        "change",
        "graphical mark",
        "mark appearance",
        "rectangle mark",
        "heatmap cell"
      ],
      "lifecycle": "Mutable resource",
      "resources": {
        "prerequisites": [
          "existing rectangle mark"
        ],
        "owns": [],
        "idOptions": [
          "target"
        ]
      },
      "authoringRoles": [
        "H3"
      ],
      "wraps": [],
      "editableVia": [
        "editRectMark"
      ],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [
        {
          "path": "opacity",
          "unit": "probability"
        },
        {
          "path": "strokeWidth",
          "unit": "logical-pixel"
        }
      ],
      "inference": [
        {
          "input": "target",
          "strategy": "explicit-current-unique-or-error"
        }
      ],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "existing rectangle mark"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "target",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "lineCap",
          "required": false,
          "type": "\"butt\" | \"round\" | \"square\" | undefined"
        },
        {
          "name": "lineJoin",
          "required": false,
          "type": "\"bevel\" | \"miter\" | \"round\" | undefined"
        },
        {
          "name": "miterLimit",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "cornerRadius",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "missing",
          "required": false,
          "type": "\"error\" | \"skip\" | undefined"
        },
        {
          "name": "fill",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "opacity",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "stroke",
          "required": false,
          "type": "string | false | undefined"
        },
        {
          "name": "strokeWidth",
          "required": false,
          "type": "number | undefined"
        }
      ],
      "callPatterns": [
        "editRectMark({ target?, lineCap?, lineJoin?, miterLimit?, cornerRadius?, missing?, fill?, opacity? })"
      ],
      "snippet": "program.editRectMark({ lineCap: \"butt\" })",
      "errors": [],
      "route": "/reference/actions/marks/#editrectmark"
    },
    {
      "schemaVersion": 3,
      "name": "createPiePlot",
      "layer": "user-facing",
      "domain": "charts",
      "summary": "Create one sector per category in the full package.",
      "signature": "createPiePlot(options: CreatePiePlotOptions): ChartProgram;",
      "intents": [
        "create pie plot",
        "create",
        "add",
        "complete chart",
        "chart facade",
        "pie plot",
        "pie chart"
      ],
      "lifecycle": "Aggregate create-only",
      "resources": {
        "prerequisites": [
          "canvas and dataset context"
        ],
        "owns": [
          "pie plot"
        ],
        "idOptions": [
          "id",
          "data",
          "coordinate"
        ]
      },
      "authoringRoles": [
        "H0"
      ],
      "wraps": [
        "createArcMark",
        "encodeTheta",
        "encodeColor",
        "createGuides"
      ],
      "editableVia": [],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [],
      "inference": [
        {
          "input": "data",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "coordinate",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "omitted optional options",
          "strategy": "documented-default"
        }
      ],
      "completionRequirements": {
        "state": "complete",
        "requires": [
          "canvas and dataset context"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "id",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "data",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "coordinate",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "category",
          "required": true,
          "type": "PieCategory"
        },
        {
          "name": "color",
          "required": false,
          "type": "false | PieColor | undefined"
        },
        {
          "name": "arc",
          "required": false,
          "type": "(StrokeStyleDetails & { innerRadius?: number | undefined; padAngle?: number | undefined; fill?: string | undefined; opacity?: number | undefined; stroke?: string | undefined; strokeWidth?: number | undefined; }) | undefined"
        },
        {
          "name": "guides",
          "required": false,
          "type": "false | { axes?: false | undefined; grid?: false | undefined; legend?: false | PieLegendOptions | undefined; } | undefined"
        },
        {
          "name": "value",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "aggregate",
          "required": false,
          "type": "\"count\" | \"sum\" | undefined"
        }
      ],
      "callPatterns": [
        "createPiePlot({ category })",
        "createPiePlot({ category, value, aggregate: \"sum\", arc? })"
      ],
      "snippet": "program.createPiePlot({ category: \"category\" })",
      "errors": [],
      "route": "/reference/actions/charts-data/#createpieplot"
    },
    {
      "schemaVersion": 3,
      "name": "createRosePlot",
      "layer": "user-facing",
      "domain": "charts",
      "summary": "Create equal-angle sectors whose sector area, excluding the hole is proportional to category count or sum.",
      "signature": "createRosePlot(options: CreateRosePlotOptions): ChartProgram;",
      "intents": [
        "create rose plot",
        "create",
        "add",
        "complete chart",
        "chart facade",
        "rose chart",
        "coxcomb chart"
      ],
      "lifecycle": "Aggregate create-only",
      "resources": {
        "prerequisites": [
          "canvas and dataset context"
        ],
        "owns": [
          "rose chart"
        ],
        "idOptions": [
          "id",
          "data",
          "coordinate"
        ]
      },
      "authoringRoles": [
        "H0"
      ],
      "wraps": [
        "createArcMark",
        "encodeTheta",
        "encodeR",
        "encodeColor",
        "createGuides"
      ],
      "editableVia": [],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [],
      "inference": [
        {
          "input": "data",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "coordinate",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "omitted optional options",
          "strategy": "documented-default"
        }
      ],
      "completionRequirements": {
        "state": "complete",
        "requires": [
          "canvas and dataset context"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "id",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "data",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "coordinate",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "category",
          "required": true,
          "type": "PieCategory"
        },
        {
          "name": "color",
          "required": false,
          "type": "false | PieColor | undefined"
        },
        {
          "name": "radiusScale",
          "required": false,
          "type": "MeasuredRadiusScaleOptions | undefined"
        },
        {
          "name": "arc",
          "required": false,
          "type": "(StrokeStyleDetails & { innerRadius?: number | undefined; padAngle?: 0 | undefined; fill?: string | undefined; opacity?: number | undefined; stroke?: string | undefined; strokeWidth?: number | undefined; }) | undefined"
        },
        {
          "name": "guides",
          "required": false,
          "type": "false | MeasuredRadialGuideOptions | undefined"
        },
        {
          "name": "value",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "aggregate",
          "required": false,
          "type": "\"count\" | \"sum\" | undefined"
        }
      ],
      "callPatterns": [
        "createRosePlot({ category, id?, data?, coordinate?, color?, radiusScale?, arc?, guides? })"
      ],
      "snippet": "program.createRosePlot({ category: \"category\" })",
      "errors": [],
      "route": "/reference/actions/charts-data/#createroseplot"
    },
    {
      "schemaVersion": 3,
      "name": "createRadialBarPlot",
      "layer": "user-facing",
      "domain": "charts",
      "summary": "Create equal-angle sectors whose radial length measured from the inner edge is proportional to category count or sum.",
      "signature": "createRadialBarPlot(options: CreateRadialBarPlotOptions): ChartProgram;",
      "intents": [
        "create radial bar plot",
        "create",
        "add",
        "complete chart",
        "chart facade",
        "radial bar chart",
        "radial bar plot"
      ],
      "lifecycle": "Aggregate create-only",
      "resources": {
        "prerequisites": [
          "canvas and dataset context"
        ],
        "owns": [
          "radial bar chart"
        ],
        "idOptions": [
          "id",
          "data",
          "coordinate"
        ]
      },
      "authoringRoles": [
        "H0"
      ],
      "wraps": [
        "createArcMark",
        "encodeTheta",
        "encodeR",
        "encodeColor",
        "createGuides"
      ],
      "editableVia": [],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [],
      "inference": [
        {
          "input": "data",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "coordinate",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "omitted optional options",
          "strategy": "documented-default"
        }
      ],
      "completionRequirements": {
        "state": "complete",
        "requires": [
          "canvas and dataset context"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "id",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "data",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "coordinate",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "category",
          "required": true,
          "type": "PieCategory"
        },
        {
          "name": "color",
          "required": false,
          "type": "false | PieColor | undefined"
        },
        {
          "name": "radiusScale",
          "required": false,
          "type": "MeasuredRadiusScaleOptions | undefined"
        },
        {
          "name": "arc",
          "required": false,
          "type": "(StrokeStyleDetails & { innerRadius?: number | undefined; padAngle?: 0 | undefined; fill?: string | undefined; opacity?: number | undefined; stroke?: string | undefined; strokeWidth?: number | undefined; }) | undefined"
        },
        {
          "name": "guides",
          "required": false,
          "type": "false | MeasuredRadialGuideOptions | undefined"
        },
        {
          "name": "value",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "aggregate",
          "required": false,
          "type": "\"count\" | \"sum\" | undefined"
        }
      ],
      "callPatterns": [
        "createRadialBarPlot({ category, id?, data?, coordinate?, color?, radiusScale?, arc?, guides? })"
      ],
      "snippet": "program.createRadialBarPlot({ category: \"category\" })",
      "errors": [],
      "route": "/reference/actions/charts-data/#createradialbarplot"
    },
    {
      "schemaVersion": 3,
      "name": "createDensityPlot",
      "layer": "user-facing",
      "domain": "statistics",
      "summary": "Creates density plot for kernel density estimate.",
      "signature": "createDensityPlot(options: CreateDensityPlotOptions): ChartProgram;",
      "intents": [
        "create density plot",
        "create",
        "add",
        "statistical layer",
        "statistical transform",
        "density plot",
        "kernel density estimate"
      ],
      "lifecycle": "Aggregate create-only",
      "resources": {
        "prerequisites": [
          "statistical source and coordinate context"
        ],
        "owns": [
          "density plot"
        ],
        "idOptions": [
          "id",
          "data",
          "coordinate"
        ]
      },
      "authoringRoles": [
        "H0",
        "H1"
      ],
      "wraps": [
        "createAreaMark",
        "encodeDensity",
        "createGuides",
        "encodeColor"
      ],
      "editableVia": [
        "editDensity",
        "editAreaMark"
      ],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [
        {
          "path": "bandwidth",
          "unit": "data-value"
        },
        {
          "path": "steps",
          "unit": "count"
        }
      ],
      "inference": [
        {
          "input": "data",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "coordinate",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "bandwidth",
          "strategy": "documented-auto"
        },
        {
          "input": "extent",
          "strategy": "documented-auto"
        },
        {
          "input": "omitted optional options",
          "strategy": "documented-default"
        }
      ],
      "completionRequirements": {
        "state": "complete",
        "requires": [
          "statistical source and coordinate context"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "id",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "data",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "coordinate",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "field",
          "required": true,
          "type": "string"
        },
        {
          "name": "groupBy",
          "required": false,
          "type": "string | false | undefined"
        },
        {
          "name": "bandwidth",
          "required": false,
          "type": "number | \"auto\" | undefined"
        },
        {
          "name": "extent",
          "required": false,
          "type": "\"auto\" | readonly [number, number] | undefined"
        },
        {
          "name": "steps",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "kernel",
          "required": false,
          "type": "DensityKernel | undefined"
        },
        {
          "name": "normalization",
          "required": false,
          "type": "DensityNormalization | undefined"
        },
        {
          "name": "weight",
          "required": false,
          "type": "StatisticalWeight | undefined"
        },
        {
          "name": "as",
          "required": false,
          "type": "readonly [string, string] | undefined"
        },
        {
          "name": "densityChannel",
          "required": false,
          "type": "\"x\" | \"y\" | undefined"
        },
        {
          "name": "valueScale",
          "required": false,
          "type": "NonPointQuantitativePositionScaleOptions | undefined"
        },
        {
          "name": "densityScale",
          "required": false,
          "type": "NonPointZeroSupportingPositionScaleOptions | undefined"
        },
        {
          "name": "color",
          "required": false,
          "type": "string | { field: string; fieldType?: \"nominal\" | \"ordinal\" | undefined; scale?: NonPointCategoricalColorScaleOptions | undefined; palette?: Palette | undefined; layout?: \"overlay\" | undefined; } | undefined"
        },
        {
          "name": "area",
          "required": false,
          "type": "(StrokeStyleDetails & { fill?: string | undefined; opacity?: number | undefined; stroke?: string | undefined; strokeWidth?: number | undefined; curve?: CurveInterpolation | undefined; }) | undefined"
        },
        {
          "name": "guides",
          "required": false,
          "type": "false | DensityPlotGuideOptions | undefined"
        }
      ],
      "callPatterns": [
        "createDensityPlot({ field })",
        "createDensityPlot({ field, groupBy, color, densityChannel? })"
      ],
      "snippet": "program.createDensityPlot({ field: \"value\" })",
      "errors": [],
      "route": "/reference/actions/statistics/#createdensityplot"
    },
    {
      "schemaVersion": 3,
      "name": "createHorizonPlot",
      "layer": "user-facing",
      "domain": "statistics",
      "summary": "Creates horizon chart for horizon plot.",
      "signature": "createHorizonPlot(options: CreateHorizonPlotOptions): ChartProgram;",
      "intents": [
        "create horizon plot",
        "create",
        "add",
        "statistical layer",
        "statistical transform",
        "horizon chart",
        "horizon plot"
      ],
      "lifecycle": "Aggregate create-only",
      "resources": {
        "prerequisites": [
          "statistical source and coordinate context"
        ],
        "owns": [
          "horizon chart"
        ],
        "idOptions": [
          "id",
          "data",
          "coordinate"
        ]
      },
      "authoringRoles": [
        "H0",
        "H1"
      ],
      "wraps": [
        "createAreaMark",
        "encodeHorizon",
        "createGuides"
      ],
      "editableVia": [
        "editHorizon",
        "editAreaMark"
      ],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [
        {
          "path": "bands",
          "unit": "count"
        }
      ],
      "inference": [
        {
          "input": "data",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "coordinate",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "extent",
          "strategy": "documented-auto"
        },
        {
          "input": "omitted optional options",
          "strategy": "documented-default"
        }
      ],
      "completionRequirements": {
        "state": "complete",
        "requires": [
          "statistical source and coordinate context"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "id",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "data",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "coordinate",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "x",
          "required": true,
          "type": "string | HorizonXEncoding"
        },
        {
          "name": "y",
          "required": true,
          "type": "string | HorizonYEncoding"
        },
        {
          "name": "groupBy",
          "required": false,
          "type": "string | false | undefined"
        },
        {
          "name": "bands",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "baseline",
          "required": false,
          "type": "number | undefined"
        },
        {
          "name": "extent",
          "required": false,
          "type": "number | \"auto\" | undefined"
        },
        {
          "name": "resolve",
          "required": false,
          "type": "HorizonResolution | undefined"
        },
        {
          "name": "missing",
          "required": false,
          "type": "HorizonMissingPolicy | undefined"
        },
        {
          "name": "overflow",
          "required": false,
          "type": "HorizonOverflowPolicy | undefined"
        },
        {
          "name": "palette",
          "required": false,
          "type": "HorizonPaletteOptions | undefined"
        },
        {
          "name": "area",
          "required": false,
          "type": "(StrokeStyleDetails & { opacity?: number | undefined; stroke?: string | undefined; strokeWidth?: number | undefined; curve?: CurveInterpolation | undefined; }) | undefined"
        },
        {
          "name": "guides",
          "required": false,
          "type": "false | HorizonPlotGuideOptions | undefined"
        }
      ],
      "callPatterns": [
        "createHorizonPlot({ x, y })",
        "createHorizonPlot({ x, y, bands?, baseline?, palette?, area? })"
      ],
      "snippet": "program.createHorizonPlot({ x: \"time\", y: \"value\" })",
      "errors": [],
      "route": "/reference/actions/statistics/#createhorizonplot"
    },
    {
      "schemaVersion": 3,
      "name": "createAreaPlot",
      "layer": "user-facing",
      "domain": "charts",
      "summary": "Create a simple area, crossing ribbon, or accumulated series chart in the full entry.",
      "signature": "createAreaPlot(options: CreateAreaPlotOptions): ChartProgram;",
      "intents": [
        "create area plot",
        "create",
        "add",
        "complete chart",
        "chart facade",
        "area chart",
        "ribbon"
      ],
      "lifecycle": "Aggregate create-only",
      "resources": {
        "prerequisites": [
          "canvas and dataset context"
        ],
        "owns": [
          "area chart"
        ],
        "idOptions": [
          "id",
          "data",
          "coordinate"
        ]
      },
      "authoringRoles": [
        "H0"
      ],
      "wraps": [
        "createAreaMark",
        "encodeGroup",
        "encodeX",
        "encodeYRange",
        "layoutSeries",
        "encodeColor",
        "createGuides"
      ],
      "editableVia": [],
      "supports": {
        "entryPoints": [
          "default"
        ]
      },
      "units": [],
      "inference": [
        {
          "input": "data",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "coordinate",
          "strategy": "explicit-current-unique-or-error"
        },
        {
          "input": "omitted optional options",
          "strategy": "documented-default"
        }
      ],
      "completionRequirements": {
        "state": "complete",
        "requires": [
          "canvas and dataset context"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "id",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "data",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "coordinate",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "groupBy",
          "required": false,
          "type": "string | readonly [string, ...string[]] | undefined"
        },
        {
          "name": "layout",
          "required": false,
          "type": "\"center\" | \"diverging\" | \"fill\" | \"overlay\" | \"stack\" | undefined"
        },
        {
          "name": "missing",
          "required": false,
          "type": "\"break\" | \"error\" | undefined"
        },
        {
          "name": "color",
          "required": false,
          "type": "string | { field: string; fieldType?: \"nominal\" | \"ordinal\" | undefined; scale?: NonPointCategoricalColorScaleOptions | undefined; palette?: Palette | undefined; } | undefined"
        },
        {
          "name": "area",
          "required": false,
          "type": "(StrokeStyleDetails & { fill?: string | undefined; opacity?: number | undefined; stroke?: string | undefined; strokeWidth?: number | undefined; curve?: CurveInterpolation | undefined; }) | undefined"
        },
        {
          "name": "guides",
          "required": false,
          "type": "false | DensityPlotGuideOptions | undefined"
        },
        {
          "name": "valueChannel",
          "required": false,
          "type": "\"x\" | \"y\" | undefined"
        },
        {
          "name": "x",
          "required": true,
          "type": "{ field: string; scale?: NonPointQuantitativePositionScaleOptions | undefined; } | AreaPlotIndependentChannel | ({ ...; } & ({ ...; } | { ...; }))"
        },
        {
          "name": "y",
          "required": true,
          "type": "{ field: string; scale?: NonPointQuantitativePositionScaleOptions | undefined; } | AreaPlotIndependentChannel | ({ ...; } & ({ ...; } | { ...; }))"
        },
        {
          "name": "baseline",
          "required": false,
          "type": "number | undefined"
        }
      ],
      "callPatterns": [
        "createAreaPlot({ x, y })",
        "createAreaPlot({ x, y, groupBy, layout })"
      ],
      "snippet": "program.createAreaPlot({ x: \"time\", y: \"value\" })",
      "errors": [],
      "route": "/reference/actions/charts-data/#createareaplot"
    },
    {
      "schemaVersion": 3,
      "name": "layoutSeries",
      "layer": "user-facing",
      "domain": "encodings",
      "summary": "Assign group, stack, fill, overlay, diverging, or center placement independently of color.",
      "signature": "layoutSeries(options: SeriesLayoutOptions): ChartProgram;",
      "intents": [
        "layout series",
        "layout",
        "avoid overlap",
        "visual encoding",
        "field mapping",
        "series placement",
        "grouped bars"
      ],
      "lifecycle": "Assignment",
      "resources": {
        "prerequisites": [
          "existing series placement"
        ],
        "owns": [
          "series placement"
        ],
        "idOptions": [
          "target"
        ]
      },
      "authoringRoles": [
        "H2"
      ],
      "wraps": [
        "editSemantic",
        "encodeXOffset",
        "encodeYOffset"
      ],
      "editableVia": [],
      "supports": {
        "entryPoints": [
          "default",
          "basic"
        ]
      },
      "units": [],
      "inference": [
        {
          "input": "target",
          "strategy": "explicit-current-unique-or-error"
        }
      ],
      "completionRequirements": {
        "state": "contextual",
        "requires": [
          "existing series placement"
        ],
        "allowsEmpty": false
      },
      "options": [
        {
          "name": "target",
          "required": false,
          "type": "string | undefined"
        },
        {
          "name": "mode",
          "required": true,
          "type": "ColorLayout"
        }
      ],
      "callPatterns": [
        "layoutSeries({ mode })"
      ],
      "snippet": "program.layoutSeries({ mode: \"stack\" })",
      "errors": [],
      "route": "/reference/actions/encodings/#layoutseries"
    }
  ]
}
