1 | import { flags as F } from '@oclif/command';
|
2 | export declare function table<T extends object>(data: T[], columns: table.Columns<T>, options?: table.Options): void;
|
3 | export declare namespace table {
|
4 | const Flags: {
|
5 | columns: F.IOptionFlag<string | undefined>;
|
6 | sort: F.IOptionFlag<string | undefined>;
|
7 | filter: F.IOptionFlag<string | undefined>;
|
8 | csv: import("@oclif/parser/lib/flags").IBooleanFlag<boolean>;
|
9 | extended: import("@oclif/parser/lib/flags").IBooleanFlag<boolean>;
|
10 | 'no-truncate': import("@oclif/parser/lib/flags").IBooleanFlag<boolean>;
|
11 | 'no-header': import("@oclif/parser/lib/flags").IBooleanFlag<boolean>;
|
12 | };
|
13 | type IFlags = typeof Flags;
|
14 | type ExcludeFlags<T, Z> = Pick<T, Exclude<keyof T, Z>>;
|
15 | type IncludeFlags<T, K extends keyof T> = Pick<T, K>;
|
16 | function flags(): IFlags;
|
17 | function flags<Z extends keyof IFlags = keyof IFlags>(opts: {
|
18 | except: Z | Z[];
|
19 | }): ExcludeFlags<IFlags, Z>;
|
20 | function flags<K extends keyof IFlags = keyof IFlags>(opts: {
|
21 | only: K | K[];
|
22 | }): IncludeFlags<IFlags, K>;
|
23 | type Columns<T extends object> = {
|
24 | [key: string]: Partial<Column<T>>;
|
25 | };
|
26 | interface Column<T extends object> {
|
27 | header: string;
|
28 | extended: boolean;
|
29 | minWidth: number;
|
30 | get(row: T): any;
|
31 | }
|
32 | interface Options {
|
33 | [key: string]: any;
|
34 | sort?: string;
|
35 | filter?: string;
|
36 | columns?: string;
|
37 | extended?: boolean;
|
38 | 'no-truncate'?: boolean;
|
39 | csv?: boolean;
|
40 | 'no-header'?: boolean;
|
41 | printLine?(s: any): any;
|
42 | }
|
43 | }
|