UNPKG

747 BTypeScriptView Raw
1import { ScaleProps } from './Scale';
2
3/**
4 * 数据记录。
5 */
6export type DataRecord = Record<string, any>;
7
8/**
9 * 数据字段。
10 */
11export type DataField<TRecord extends DataRecord> = keyof TRecord;
12
13/**
14 * 数据值。
15 */
16export type DataValue<
17 TRecord extends DataRecord,
18 TField extends DataField<TRecord>
19> = TRecord[TField];
20
21/**
22 * 数据。
23 */
24export type Data<TRecord extends DataRecord> = TRecord[];
25
26/**
27 * 数据字段的度量。
28 */
29export type DataFieldScale<
30 TRecord extends DataRecord,
31 TField extends DataField<TRecord>
32> = ScaleProps<TRecord, TField>;
33
34/**
35 * 数据记录的度量。
36 */
37export type DataRecordScale<TRecord extends DataRecord> = {
38 [Field in keyof TRecord]?: DataFieldScale<TRecord, Field>;
39};