Hi there! Are you looking for the official Deno documentation? Try docs.deno.com for all your Deno learning needs.

CaseWhenBuilder

class CaseWhenBuilder<DB, TB extends keyof DB, W, O> implements Whenable<DB, TB, W, O>, Endable<DB, TB, O | null> {
constructor(props: CaseBuilderProps);
else<E extends Expression<unknown>>(expression: E): CaseEndBuilder<DB, TB, O | ExtractTypeFromValueExpression<E>>;
else<V>(value: V): CaseEndBuilder<DB, TB, O | V>;
end(): ExpressionWrapper<DB, TB, O | null>;
endCase(): ExpressionWrapper<DB, TB, O | null>;
when<RE extends ReferenceExpression<DB, TB>, VE extends OperandValueExpressionOrList<DB, TB, RE>>(
lhs: unknown extends W ? RE : KyselyTypeError<"when(lhs, op, rhs) is not supported when using case(value)">,
rhs: VE,
): CaseThenBuilder<DB, TB, W, O>;
when(expression: Expression<W>): CaseThenBuilder<DB, TB, W, O>;
when(value: unknown extends W ? KyselyTypeError<"when(value) is only supported when using case(value)"> : W): CaseThenBuilder<DB, TB, W, O>;
}

§Type Parameters

§
TB extends keyof DB
[src]

§Implements

§
Whenable<DB, TB, W, O>
[src]
§
Endable<DB, TB, O | null>
[src]

§Constructors

§
new CaseWhenBuilder(props: CaseBuilderProps)
[src]

§Methods

§
else<E extends Expression<unknown>>(expression: E): CaseEndBuilder<DB, TB, O | ExtractTypeFromValueExpression<E>>
[src]

Adds an else clause to the case statement.

An else call must be followed by an {@link Endable.end} or {@link Endable.endCase} call.

else<V>(value: V): CaseEndBuilder<DB, TB, O | V>
[src]
§
end(): ExpressionWrapper<DB, TB, O | null>
[src]

Adds an end keyword to the case operator.

case operators can only be used as part of a query. For a case statement used as part of a stored program, use {@link endCase} instead.

§
endCase(): ExpressionWrapper<DB, TB, O | null>
[src]

Adds end case keywords to the case statement.

case statements can only be used for flow control in stored programs. For a case operator used as part of a query, use {@link end} instead.

§
when<RE extends ReferenceExpression<DB, TB>, VE extends OperandValueExpressionOrList<DB, TB, RE>>(lhs: unknown extends W ? RE : KyselyTypeError<"when(lhs, op, rhs) is not supported when using case(value)">, op: ComparisonOperatorExpression, rhs: VE): CaseThenBuilder<DB, TB, W, O>
[src]

Adds a when clause to the case statement.

A when call must be followed by a CaseThenBuilder.then call.

when(expression: Expression<W>): CaseThenBuilder<DB, TB, W, O>
[src]
when(value: unknown extends W ? KyselyTypeError<"when(value) is only supported when using case(value)"> : W): CaseThenBuilder<DB, TB, W, O>
[src]