import type { CSS4Color } from "@siteimprove/alfa-css"; import type { Node } from "@siteimprove/alfa-dom"; import type { Option } from "@siteimprove/alfa-option"; import * as act from "@siteimprove/alfa-act"; /** * @public */ export declare namespace Question { /** * Maps the `type` parameter of questions to the expected type of the answer. */ interface Type { boolean: boolean; node: Option; "node[]": Iterable; "color[]": Iterable; string: string; } type TypeName = Data[U]["type"]; type Typeof = Type[TypeName]; /** * @public * Maps the `uri` parameter of questions to their `type` parameter and the * expected type of answers. */ export type Metadata = { [U in Uri]: [TypeName, Typeof]; }; type Data = typeof Data & Record; type Uri = keyof typeof Data; export function of(uri: U, subject: S, message?: string, options?: act.Question.Options>): act.Question, S, S, Typeof, Typeof, U>; export function of(uri: U, subject: S, context: C, message?: string, options?: act.Question.Options>): act.Question, S, C, Typeof, Typeof, U>; const Data: { readonly "reference-equivalent-resources": { readonly type: "boolean"; readonly message: "Do the [links/iframe] [resolve to/reference] equivalent resources?"; }; readonly "has-audio": { readonly type: "boolean"; readonly message: "Does the `