import { type ImmutableArray } from "../util/array.js"; import { type Entity } from "../util/entity.js"; import { StringSchema, type StringSchemaOptions } from "./StringSchema.js"; /** Allowed options for `EntitySchema` with specific types */ export interface EntitySchemaOptions extends StringSchemaOptions { readonly types?: ImmutableArray | undefined; } /** Validate a file name matching one or more extensions. */ export declare class EntitySchema extends StringSchema { readonly types: ImmutableArray | undefined; constructor({ one, title, types, ...options }: EntitySchemaOptions); validate(unsafeValue?: unknown): Entity; } /** Valid file, e.g. `challenge:a1b2c3` */ export declare const ENTITY: EntitySchema; /** Valid optional file, e.g. `file.txt`, or `null` */ export declare const NULLABLE_ENTITY: import("./NullableSchema.js").NullableSchema<`${string}:${string}`>;