TS Type Hidden
Hide those familiar type codes! Get the snippet back to its simplest form!
English | 简体中文
- One-click hide/show type code
- Customize the type kinds that need to be hidden (
interface
,type-alias
, ...) - Type code will be displayed when cursor active the line
- There are small blue dots that means relative line exist hidden type code
- Under hidden mode, Multi-line type code will be folded into one line
- Status bar shows the current hidden mode status, click to toggle
-
ts-type-hidden.toggle
: Toggle the current hidden mode- Default keyboard shortcuts:
- mac:
cmd + shift + t
- windows:
ctrl + shift + t
- mac:
- Default keyboard shortcuts:
-
ts-type-hidden.open
: Open the hidden mode -
ts-type-hidden.close
: Close the hidden mode
-
ts-type-hidden.enable
: Enable the plugin or not -
ts-type-hidden.typeIconPath
: The path to the Icon file next to a line of type code(supportsvg/png/jpg/jpeg/...
file format) -
ts-type-hidden.ignoreTypeKinds
: Type kinds that do not need to be hidden👇View example
6469_1692709788_raw.mp4
View configuration options
-
type-alias
:type A = ({ ... } & { ... }) | string[]
⏭️
type A = ({ ... } & { ... }) | string[]
-
interface
:interface A { ... }
⏭️
interface A { ... }
-
function-overload
:function fn(a: number): number[]; function fn(a: number[], opts: { ... }): number[];
⏭️
function fn(a: number): number[];
⏭️
function fn(a: number[], opts: { ... }): number[];
-
function-return
:function fn(): number {}
⏭️
: number
-
function-type-predicate
:function fn(a: any): a is number {}
⏭️
: a is number
-
function-parameter
:function fn<A extends string>(a: A, b: number) {}
⏭️
: A
⏭️
: number
-
function-generic-definition
:function fn<A extends string, B = [A, '']>() {}
⏭️
<A extends string, B = [A, '']>
-
function-call-generic
:const name = get<UserModule>(userModule, 'info.name'); const userModel = new UserModel<UserEntity>({ ... });
⏭️
<UserModule>
⏭️
<UserEntity>
-
tsx-component-generic
:const EditUserForm = <ProForm<UserModel> id={userId} />;
⏭️
<UserModel>
-
variable-type-definition
:const a: number = 1;
⏭️
: number
-
class-property-type-definition
:class A { public size?: number; private setSize!: Function = () => {} }
⏭️
?: number
⏭️
!: Function
-
angle-brackets-assertion
:const num: any = 77; const num1 = (<number>num).toFixed(2);
⏭️
<number>
-
as-assertion
:fn() as any;
⏭️
as any
-
satisfies-operator
:const user = { ... } satisfies UserModel;
⏭️
satisfies UserModel
-
declare-statement
:declare const a: number; declare function b(): number; declare class c {} declare module d {} declare namespace e {} declare enum f {} declare global {} declare module 'g' {}
⏭️ 👆All statements that begin with
declare
-
type-only-import-declaration
:import type * as a from 'a'; import type { b1 } from 'b';
⏭️
import type * as a from 'a';
⏭️
import type { b1 } from 'b';
-
import-type-specifier
:import {type a1, a2} from 'a';
⏭️
type a1
-
type-only-export-declaration
:export type * as a from 'a'; export type { b1 } from 'b';
⏭️
export type * from 'a';
⏭️
export type { b1 } from 'b';
-
export-type-specifier
:export {a1, type a2} from 'a';
⏭️
type a2
-
MIT License © 2023-PRESENT xlboy