@platform/cell.typesystem
Version:
The 'strongly typed sheets' system of the CellOS.
42 lines (41 loc) • 1.31 kB
TypeScript
import { t } from './common';
export declare type IArgs = {
typename: string;
typeDef: t.IColumnTypeDef<t.ITypeRef>;
parent: t.ITypedSheetRefParent;
ctx: t.SheetCtx;
};
export declare class TypedSheetRefs<T, K extends keyof T> implements t.ITypedSheetRefs<T, K> {
static PLACEHOLDER: string;
static create<T, K extends keyof T>(args: IArgs): TypedSheetRefs<T, K>;
static refLinkName(args: {
typeDef: t.IColumnTypeDef<t.ITypeRef>;
}): string;
static refLinkKey(args: {
typeDef: t.IColumnTypeDef<t.ITypeRef>;
}): string;
static refLink(args: {
typeDef: t.IColumnTypeDef<t.ITypeRef>;
links?: t.IUriMap;
}): {
linkKey: string;
linkName: string;
link: t.IRefLink<t.IRefLinkUri> | undefined;
};
private constructor();
private readonly _ctx;
private _sheet;
private _load;
ns: t.INsUri;
readonly typeDef: t.IColumnTypeDef<t.ITypeRef>;
readonly typename: string;
readonly parent: t.ITypedSheetRefParent;
get isLoaded(): boolean;
get sheet(): t.ITypedSheet<T>;
load(): Promise<t.ITypedSheetRefs<T, K>>;
data(options?: t.ITypedSheetDataOptions): Promise<t.ITypedSheetData<T, K>>;
private fire;
private getCell;
private getLink;
private ensureLink;
}