System_TableSchema Namespace
Not intended for use outside of this package.
For more information about our API support guarantees, see here.
Signature
export declare namespace System_TableSchema
Interfaces
| Interface | Alerts | Description |
|---|---|---|
| OptionsWithCellSchema | System | A base interface for factory input options which include the table cell schema. |
| OptionsWithSchemaFactory | System | A base interface for factory input options which include an schema factory. |
Types
| TypeAlias | Alerts | Modifiers | Description |
|---|---|---|---|
| ColumnSchemaBase | System | sealed | Base column schema type. |
| CreateColumnOptionsBase | System | Base options for creating table column schema. | |
| CreateRowOptionsBase | System | Base options for creating table row schema. | |
| DefaultPropsType | System | Default type used for column and row "props" fields. | |
| RearrangeableList | System | A list of items in a table whose elements may be rearranged, but not inserted or removed. | |
| RowSchemaBase | System | sealed | Base row schema type. |
| TableFactoryOptionsBase | System | Base options for creating table schema. | |
| TableSchemaBase | System | sealed | Base row schema type. |
Functions
| Function | Alerts | Modifiers | Return Type | Description |
|---|---|---|---|---|
| createColumnSchema(inputSchemaFactory, propsSchema) | System | TreeNodeSchemaClass<ScopedSchemaName<`com.fluidframework.table<${TUserScope}>`, "Column">, NodeKind.Object, TreeNode & TableSchema.Column<TCellSchema, TPropsSchema> & WithType<ScopedSchemaName<`com.fluidframework.table<${TUserScope}>`, "Column">, NodeKind, unknown>, object & { readonly id?: string | undefined; } & (FieldHasDefault<TPropsSchema> extends true ? { props?: InsertableTreeFieldFromImplicitField<TPropsSchema> | undefined; } : { props: InsertableTreeFieldFromImplicitField<TPropsSchema>; }), true, { readonly props: TPropsSchema; readonly id: import("./simple-tree/fieldSchema.js").FieldSchema<import("./simple-tree/fieldSchema.js").FieldKind.Identifier, import("./simple-tree/leafNodeSchema.js").LeafSchema<"string", string>, unknown>; }> | Factory for creating column schema. | |
| createRowSchema(inputSchemaFactory, cellSchema, propsSchema) | Alpha | sealed | TreeNodeSchemaClass<ScopedSchemaName<`com.fluidframework.table<${TUserScope}>`, "Row">, NodeKind.Object, TreeNode & TableSchema.Row<TCellSchema, TPropsSchema> & WithType<ScopedSchemaName<`com.fluidframework.table<${TUserScope}>`, "Row">, NodeKind, unknown>, object & { readonly id?: string | undefined; readonly cells: (import("./simple-tree/index.js").InsertableTypedNode<TreeNodeSchemaClass<ScopedSchemaName<`com.fluidframework.table<${TUserScope}>`, "Row.cells">, NodeKind.Record, TreeRecordNode<TCellSchema> & WithType<ScopedSchemaName<`com.fluidframework.table<${TUserScope}>`, "Row.cells">, NodeKind.Record, unknown>, import("./simple-tree/index.js").RecordNodeInsertableData<TCellSchema>, true, TCellSchema, undefined, unknown>> | undefined) & import("./simple-tree/index.js").InsertableTypedNode<TreeNodeSchemaClass<ScopedSchemaName<`com.fluidframework.table<${TUserScope}>`, "Row.cells">, NodeKind.Record, TreeRecordNode<TCellSchema> & WithType<ScopedSchemaName<`com.fluidframework.table<${TUserScope}>`, "Row.cells">, NodeKind.Record, unknown>, import("./simple-tree/index.js").RecordNodeInsertableData<TCellSchema>, true, TCellSchema, undefined, unknown>>; } & (FieldHasDefault<TPropsSchema> extends true ? { props?: InsertableTreeFieldFromImplicitField<TPropsSchema> | undefined; } : { props: InsertableTreeFieldFromImplicitField<TPropsSchema>; }), true, { readonly props: TPropsSchema; readonly id: import("./simple-tree/fieldSchema.js").FieldSchema<import("./simple-tree/fieldSchema.js").FieldKind.Identifier, import("./simple-tree/leafNodeSchema.js").LeafSchema<"string", string>, unknown>; readonly cells: import("./simple-tree/fieldSchema.js").FieldSchema<import("./simple-tree/fieldSchema.js").FieldKind.Required, TreeNodeSchemaClass<ScopedSchemaName<`com.fluidframework.table<${TUserScope}>`, "Row.cells">, NodeKind.Record, TreeRecordNode<TCellSchema> & WithType<ScopedSchemaName<`com.fluidframework.table<${TUserScope}>`, "Row.cells">, NodeKind.Record, unknown>, import("./simple-tree/index.js").RecordNodeInsertableData<TCellSchema>, true, TCellSchema, undefined, unknown>, unknown>; }> | Factory for creating row schema. |
| createTableSchema(inputSchemaFactory, _cellSchema, columnSchema, rowSchema) | System | { create<TThis extends new (data?: InternalTreeNode | undefined) => TreeNode & TableSchema.Table<TUserScope, TCellSchema, TColumnSchema, TRowSchema> & WithType<ScopedSchemaName<`com.fluidframework.table<${TUserScope}>`, "TableRoot">, NodeKind, unknown>>(this: TThis, initialContents?: TableSchema.TableFactoryMethodParameters<TUserScope, TCellSchema, TColumnSchema, TRowSchema> | undefined): InstanceType<TThis>; } & (new (data?: InternalTreeNode | undefined) => TreeNode & TableSchema.Table<TUserScope, TCellSchema, TColumnSchema, TRowSchema> & WithType<ScopedSchemaName<`com.fluidframework.table<${TUserScope}>`, "TableRoot">, NodeKind, unknown>) & TreeNodeSchemaCore<ScopedSchemaName<`com.fluidframework.table<${TUserScope}>`, "TableRoot"> & string, NodeKind, false, unknown, never, unknown> & (new (data: InternalTreeNode) => TreeNode & TableSchema.Table<TUserScope, TCellSchema, TColumnSchema, TRowSchema> & WithType<ScopedSchemaName<`com.fluidframework.table<${TUserScope}>`, "TableRoot">, NodeKind, unknown> & WithType<ScopedSchemaName<`com.fluidframework.table<${TUserScope}>`, "TableRoot"> & string, NodeKind, unknown>) | Factory for creating table schema. |
Function Details
createColumnSchema
Factory for creating column schema.
For more information about our API support guarantees, see here.
Signature
function createColumnSchema<const TUserScope extends string, const TCellSchema extends ImplicitAllowedTypes, const TPropsSchema extends ImplicitFieldSchema>(inputSchemaFactory: SchemaFactoryBeta<TUserScope>, propsSchema: TPropsSchema): TreeNodeSchemaClass<ScopedSchemaName<`com.fluidframework.table<${TUserScope}>`, "Column">, NodeKind.Object, TreeNode & TableSchema.Column<TCellSchema, TPropsSchema> & WithType<ScopedSchemaName<`com.fluidframework.table<${TUserScope}>`, "Column">, NodeKind, unknown>, object & {
readonly id?: string | undefined;
} & (FieldHasDefault<TPropsSchema> extends true ? {
props?: InsertableTreeFieldFromImplicitField<TPropsSchema> | undefined;
} : {
props: InsertableTreeFieldFromImplicitField<TPropsSchema>;
}), true, {
readonly props: TPropsSchema;
readonly id: import("./simple-tree/fieldSchema.js").FieldSchema<import("./simple-tree/fieldSchema.js").FieldKind.Identifier, import("./simple-tree/leafNodeSchema.js").LeafSchema<"string", string>, unknown>;
}>;
Type Parameters
| Parameter | Constraint | Description |
|---|---|---|
| TUserScope | string | |
| TCellSchema | ImplicitAllowedTypes | |
| TPropsSchema | ImplicitFieldSchema |
Parameters
| Parameter | Type | Description |
|---|---|---|
| inputSchemaFactory | SchemaFactoryBeta<TUserScope> | |
| propsSchema | TPropsSchema |
Returns
Return type: TreeNodeSchemaClass<ScopedSchemaName<`com.fluidframework.table<${TUserScope}>`, "Column">, NodeKind.Object, TreeNode & TableSchema.Column<TCellSchema, TPropsSchema> & WithType<ScopedSchemaName<`com.fluidframework.table<${TUserScope}>`, "Column">, NodeKind, unknown>, object & { readonly id?: string | undefined; } & (FieldHasDefault<TPropsSchema> extends true ? { props?: InsertableTreeFieldFromImplicitField<TPropsSchema> | undefined; } : { props: InsertableTreeFieldFromImplicitField<TPropsSchema>; }), true, { readonly props: TPropsSchema; readonly id: import("./simple-tree/fieldSchema.js").FieldSchema<import("./simple-tree/fieldSchema.js").FieldKind.Identifier, import("./simple-tree/leafNodeSchema.js").LeafSchema<"string", string>, unknown>; }>
createRowSchema
Factory for creating row schema.
For more information about our API support guarantees, see here.
This type is "sealed," meaning that code outside of the library defining it should not implement or extend it. Future versions of this type may add members or make typing of readonly members more specific.
Signature
/** @sealed */
function createRowSchema<const TUserScope extends string, const TCellSchema extends ImplicitAllowedTypes, const TPropsSchema extends ImplicitFieldSchema>(inputSchemaFactory: SchemaFactoryBeta<TUserScope>, cellSchema: TCellSchema, propsSchema: TPropsSchema): TreeNodeSchemaClass<ScopedSchemaName<`com.fluidframework.table<${TUserScope}>`, "Row">, NodeKind.Object, TreeNode & TableSchema.Row<TCellSchema, TPropsSchema> & WithType<ScopedSchemaName<`com.fluidframework.table<${TUserScope}>`, "Row">, NodeKind, unknown>, object & {
readonly id?: string | undefined;
readonly cells: (import("./simple-tree/index.js").InsertableTypedNode<TreeNodeSchemaClass<ScopedSchemaName<`com.fluidframework.table<${TUserScope}>`, "Row.cells">, NodeKind.Record, TreeRecordNode<TCellSchema> & WithType<ScopedSchemaName<`com.fluidframework.table<${TUserScope}>`, "Row.cells">, NodeKind.Record, unknown>, import("./simple-tree/index.js").RecordNodeInsertableData<TCellSchema>, true, TCellSchema, undefined, unknown>> | undefined) & import("./simple-tree/index.js").InsertableTypedNode<TreeNodeSchemaClass<ScopedSchemaName<`com.fluidframework.table<${TUserScope}>`, "Row.cells">, NodeKind.Record, TreeRecordNode<TCellSchema> & WithType<ScopedSchemaName<`com.fluidframework.table<${TUserScope}>`, "Row.cells">, NodeKind.Record, unknown>, import("./simple-tree/index.js").RecordNodeInsertableData<TCellSchema>, true, TCellSchema, undefined, unknown>>;
} & (FieldHasDefault<TPropsSchema> extends true ? {
props?: InsertableTreeFieldFromImplicitField<TPropsSchema> | undefined;
} : {
props: InsertableTreeFieldFromImplicitField<TPropsSchema>;
}), true, {
readonly props: TPropsSchema;
readonly id: import("./simple-tree/fieldSchema.js").FieldSchema<import("./simple-tree/fieldSchema.js").FieldKind.Identifier, import("./simple-tree/leafNodeSchema.js").LeafSchema<"string", string>, unknown>;
readonly cells: import("./simple-tree/fieldSchema.js").FieldSchema<import("./simple-tree/fieldSchema.js").FieldKind.Required, TreeNodeSchemaClass<ScopedSchemaName<`com.fluidframework.table<${TUserScope}>`, "Row.cells">, NodeKind.Record, TreeRecordNode<TCellSchema> & WithType<ScopedSchemaName<`com.fluidframework.table<${TUserScope}>`, "Row.cells">, NodeKind.Record, unknown>, import("./simple-tree/index.js").RecordNodeInsertableData<TCellSchema>, true, TCellSchema, undefined, unknown>, unknown>;
}>;
Type Parameters
| Parameter | Constraint | Description |
|---|---|---|
| TUserScope | string | |
| TCellSchema | ImplicitAllowedTypes | |
| TPropsSchema | ImplicitFieldSchema |
Parameters
| Parameter | Type | Description |
|---|---|---|
| inputSchemaFactory | SchemaFactoryBeta<TUserScope> | |
| cellSchema | TCellSchema | |
| propsSchema | TPropsSchema |
Returns
Return type: TreeNodeSchemaClass<ScopedSchemaName<`com.fluidframework.table<${TUserScope}>`, "Row">, NodeKind.Object, TreeNode & TableSchema.Row<TCellSchema, TPropsSchema> & WithType<ScopedSchemaName<`com.fluidframework.table<${TUserScope}>`, "Row">, NodeKind, unknown>, object & { readonly id?: string | undefined; readonly cells: (import("./simple-tree/index.js").InsertableTypedNode<TreeNodeSchemaClass<ScopedSchemaName<`com.fluidframework.table<${TUserScope}>`, "Row.cells">, NodeKind.Record, TreeRecordNode<TCellSchema> & WithType<ScopedSchemaName<`com.fluidframework.table<${TUserScope}>`, "Row.cells">, NodeKind.Record, unknown>, import("./simple-tree/index.js").RecordNodeInsertableData<TCellSchema>, true, TCellSchema, undefined, unknown>> | undefined) & import("./simple-tree/index.js").InsertableTypedNode<TreeNodeSchemaClass<ScopedSchemaName<`com.fluidframework.table<${TUserScope}>`, "Row.cells">, NodeKind.Record, TreeRecordNode<TCellSchema> & WithType<ScopedSchemaName<`com.fluidframework.table<${TUserScope}>`, "Row.cells">, NodeKind.Record, unknown>, import("./simple-tree/index.js").RecordNodeInsertableData<TCellSchema>, true, TCellSchema, undefined, unknown>>; } & (FieldHasDefault<TPropsSchema> extends true ? { props?: InsertableTreeFieldFromImplicitField<TPropsSchema> | undefined; } : { props: InsertableTreeFieldFromImplicitField<TPropsSchema>; }), true, { readonly props: TPropsSchema; readonly id: import("./simple-tree/fieldSchema.js").FieldSchema<import("./simple-tree/fieldSchema.js").FieldKind.Identifier, import("./simple-tree/leafNodeSchema.js").LeafSchema<"string", string>, unknown>; readonly cells: import("./simple-tree/fieldSchema.js").FieldSchema<import("./simple-tree/fieldSchema.js").FieldKind.Required, TreeNodeSchemaClass<ScopedSchemaName<`com.fluidframework.table<${TUserScope}>`, "Row.cells">, NodeKind.Record, TreeRecordNode<TCellSchema> & WithType<ScopedSchemaName<`com.fluidframework.table<${TUserScope}>`, "Row.cells">, NodeKind.Record, unknown>, import("./simple-tree/index.js").RecordNodeInsertableData<TCellSchema>, true, TCellSchema, undefined, unknown>, unknown>; }>
createTableSchema
Factory for creating table schema.
For more information about our API support guarantees, see here.
Signature
function createTableSchema<const TUserScope extends string, const TCellSchema extends ImplicitAllowedTypes, const TColumnSchema extends ColumnSchemaBase<TUserScope, TCellSchema>, const TRowSchema extends RowSchemaBase<TUserScope, TCellSchema>>(inputSchemaFactory: SchemaFactoryBeta<TUserScope>, _cellSchema: TCellSchema, columnSchema: TColumnSchema, rowSchema: TRowSchema): {
create<TThis extends new (data?: InternalTreeNode | undefined) => TreeNode & TableSchema.Table<TUserScope, TCellSchema, TColumnSchema, TRowSchema> & WithType<ScopedSchemaName<`com.fluidframework.table<${TUserScope}>`, "TableRoot">, NodeKind, unknown>>(this: TThis, initialContents?: TableSchema.TableFactoryMethodParameters<TUserScope, TCellSchema, TColumnSchema, TRowSchema> | undefined): InstanceType<TThis>;
} & (new (data?: InternalTreeNode | undefined) => TreeNode & TableSchema.Table<TUserScope, TCellSchema, TColumnSchema, TRowSchema> & WithType<ScopedSchemaName<`com.fluidframework.table<${TUserScope}>`, "TableRoot">, NodeKind, unknown>) & TreeNodeSchemaCore<ScopedSchemaName<`com.fluidframework.table<${TUserScope}>`, "TableRoot"> & string, NodeKind, false, unknown, never, unknown> & (new (data: InternalTreeNode) => TreeNode & TableSchema.Table<TUserScope, TCellSchema, TColumnSchema, TRowSchema> & WithType<ScopedSchemaName<`com.fluidframework.table<${TUserScope}>`, "TableRoot">, NodeKind, unknown> & WithType<ScopedSchemaName<`com.fluidframework.table<${TUserScope}>`, "TableRoot"> & string, NodeKind, unknown>);
Type Parameters
| Parameter | Constraint | Description |
|---|---|---|
| TUserScope | string | |
| TCellSchema | ImplicitAllowedTypes | |
| TColumnSchema | ColumnSchemaBase<TUserScope, TCellSchema> | |
| TRowSchema | RowSchemaBase<TUserScope, TCellSchema> |
Parameters
| Parameter | Type | Description |
|---|---|---|
| inputSchemaFactory | SchemaFactoryBeta<TUserScope> | |
| _cellSchema | TCellSchema | |
| columnSchema | TColumnSchema | |
| rowSchema | TRowSchema |
Returns
Return type: { create<TThis extends new (data?: InternalTreeNode | undefined) => TreeNode & TableSchema.Table<TUserScope, TCellSchema, TColumnSchema, TRowSchema> & WithType<ScopedSchemaName<`com.fluidframework.table<${TUserScope}>`, "TableRoot">, NodeKind, unknown>>(this: TThis, initialContents?: TableSchema.TableFactoryMethodParameters<TUserScope, TCellSchema, TColumnSchema, TRowSchema> | undefined): InstanceType<TThis>; } & (new (data?: InternalTreeNode | undefined) => TreeNode & TableSchema.Table<TUserScope, TCellSchema, TColumnSchema, TRowSchema> & WithType<ScopedSchemaName<`com.fluidframework.table<${TUserScope}>`, "TableRoot">, NodeKind, unknown>) & TreeNodeSchemaCore<ScopedSchemaName<`com.fluidframework.table<${TUserScope}>`, "TableRoot"> & string, NodeKind, false, unknown, never, unknown> & (new (data: InternalTreeNode) => TreeNode & TableSchema.Table<TUserScope, TCellSchema, TColumnSchema, TRowSchema> & WithType<ScopedSchemaName<`com.fluidframework.table<${TUserScope}>`, "TableRoot">, NodeKind, unknown> & WithType<ScopedSchemaName<`com.fluidframework.table<${TUserScope}>`, "TableRoot"> & string, NodeKind, unknown>)