UNPKG

timered-counter

Version:

Make the value change more vivid and natural

45 lines (44 loc) 1.85 kB
import { PropertyValues } from 'lit'; import { Constructor } from 'type-fest'; import { CounterBaseMixin } from './counter-base.js'; import { PartData } from '../types/group.js'; import { PartPreprocessedData } from '../utils/preprocess-part-data.js'; import { AvailableNumberAdapterValueType } from '../number-adapter/index.js'; export interface PartsOptions { sampleCount: number; /** * 可以通过该属性将数字转换为你想要的任意字符串. */ digitToChar: Record<string | number, string> | string[]; /** * 小数点分隔符. */ decimalSeparator: string; /** * 当**位数不足**时, 强制补全的 [整数, 小数] 位数. 为空时位数自适应. */ minPlaces: [number | undefined, number | undefined]; fillChar: string; /** * 数据类型. * * 1. `'string'`: 字符串类型. * 1. 不会使用 `decimalSeparator` 截取小数部分. * 2. `'number'`: 数字类型. * * @default `'number'` */ type: 'string' | 'number'; } export declare class CounterPartsMixinInterface<V extends AvailableNumberAdapterValueType> { parts: PartData[]; oldParts: PartData[]; partPreprocessDataList: PartPreprocessedData[][]; get partsOptions(): Partial<PartsOptions>; set partsOptions(value: Partial<PartsOptions>); sampling(from: V, to: V): V[]; sampleSplit(samples: V[]): V[][]; sampleToString(value: V): string; shouldRebuildParts(changedProperties: PropertyValues<this>): boolean; } export declare const CounterPartsMixin: <V extends AvailableNumberAdapterValueType, T extends ReturnType<typeof CounterBaseMixin<V>> = Constructor<import("./counter-base.js").CounterBaseMixinInterface<V>> & Constructor<import("lit").LitElement>>(superClass: T) => Constructor<CounterPartsMixinInterface<V>> & T;