narrowByClauseExpressionInSwitchTrue3.ts(12,9): error TS2367: This comparison appears to be unintentional because the types '"square"' and '"circle"' have no overlap.
narrowByClauseExpressionInSwitchTrue3.ts(13,32): error TS2339: Property 'radius' does not exist on type 'never'.
narrowByClauseExpressionInSwitchTrue3.ts(15,14): error TS2367: This comparison appears to be unintentional because the types '"square"' and '"circle"' have no overlap.


==== narrowByClauseExpressionInSwitchTrue3.ts (3 errors) ====
    type Shape =
        | { kind: "circle", radius: number }
        | { kind: "square", sideLength: number }
    
    function wat(shape: Shape) {
        switch (true) {
            case shape.kind === "circle":
                return Math.PI * shape.radius ** 2;
            case shape.kind === "circle": // should error
        }
    
        if (shape.kind === "circle") {
            ~~~~~~~~~~~~~~~~~~~~~~~
!!! error TS2367: This comparison appears to be unintentional because the types '"square"' and '"circle"' have no overlap.
            return Math.PI * shape.radius ** 2;
                                   ~~~~~~
!!! error TS2339: Property 'radius' does not exist on type 'never'.
        }
        else if (shape.kind === "circle") {
                 ~~~~~~~~~~~~~~~~~~~~~~~
!!! error TS2367: This comparison appears to be unintentional because the types '"square"' and '"circle"' have no overlap.
            //         ~~~~
            // Property 'kind' does not exist on type 'never'.
        }
    }
    