import type { MockServerConfig, ResourceItem, TableDef, TypedRequestReply } from '../types.ts'; /** * A platform product an app may include beside GSF and auth, by its GSF * product name: Create's Notifications, Reporting, Document Management and * Reconciliation. */ export type PlatformProduct = 'genesis-notify' | 'reporting' | 'file-server' | 'reconciliation'; export declare const PLATFORM_PRODUCTS: readonly PlatformProduct[]; export declare function includedProducts(products?: readonly string[]): Set; export declare function productOf(type: ResourceItem['RESOURCE_TYPE'], name: string): string | undefined; export declare function productResources(included: Set): ResourceItem[]; export declare function ofIncluded(record: Record, type: ResourceItem['RESOURCE_TYPE'], included: Set): Record; export declare function platformTable(name: string): TableDef; export declare const isPlatformTable: (name: string) => boolean; export declare const aliasedEnumKeys: (table: string, field: string) => string[] | undefined; export declare const fieldFormat: (field: string) => string | undefined; export declare const typedRequestReply: (name: string) => TypedRequestReply | undefined; /** * The generated backing for the included products, a fresh copy each call: * their queries and request servers over a table or view, those tables * (empty, or holding the product's own seed rows) and their views, read or * not, as the real dictionary holds them all. A table in `presetTables` is * the caller's, and isn't repeated here. */ export declare function productBacking(included: Set, presetTables: Record): Pick;