import { SchemaDefinitionConfiguration, SchemaValue } from "./SchemaDefinition"; import Instruction, { InstructionOptions } from "../Instruction"; import { BlockInstance } from "@wordpress/blocks"; import { BlockValidationResult } from "../validation"; export declare type SchemaInstructionClass = { new (id: number, options: InstructionOptions): SchemaInstruction; }; /** * SchemaInstruction class. */ export default abstract class SchemaInstruction extends Instruction { /** * Renders schema. * * @param blockInstance The block. * * @returns The schema. */ render(blockInstance: BlockInstance): SchemaValue; /** * Returns the schema definition configuration. * * @returns The configuration. */ configuration(): Partial; /** * Validates a block against a schema definition. * * @param blockInstance The block to validate. * @returns {BlockValidationResult} The validation results. */ validate(blockInstance: BlockInstance): BlockValidationResult; }