bupkis
    Preparing search index...

    Interface AssertionAsync<Parts, Impl, Slots>

    Interface for the base abstract Assertion class.

    This interface defines the contract for assertion instances, including properties for assertion parts, implementation, slots, and methods for parsing and executing assertions both synchronously and asynchronously.

    interface AssertionAsync<
        Parts extends AssertionParts = AssertionParts,
        Impl extends AssertionImplAsync<Parts> = AssertionImplAsync<Parts>,
        Slots extends AssertionSlots<Parts> = AssertionSlots<Parts>,
    > {
        id: string;
        impl: Impl;
        parts: Parts;
        slots: Slots;
        executeAsync(
            parsedValues: ParsedValues<Parts>,
            args: unknown[],
            stackStartFn: (...args: any[]) => any,
            parseResult?: ParsedResult<Parts>,
        ): Promise<void>;
        parseValuesAsync<Args extends readonly unknown[]>(
            args: Args,
        ): Promise<ParsedResult<Parts>>;
        toString(): string;
    }

    Type Parameters

    Hierarchy (View Summary)

    Index

    Properties

    id: string
    impl: Impl

    The implementation function or schema for this assertion.

    parts: Parts

    The assertion parts used to create this assertion.

    Available at runtime for introspection.

    slots: Slots

    The slots derived from assertion parts for validation.

    Methods

    • Execute the assertion implementation asynchronously.

      Parameters

      • parsedValues: ParsedValues<Parts>

        Parameters for the assertion implementation

      • args: unknown[]

        Raw parameters passed to expectAsync()

      • stackStartFn: (...args: any[]) => any

        Function to use as stack start for error reporting

      • OptionalparseResult: ParsedResult<Parts>

        Optional parse result containing cached validation data

      Returns Promise<void>