export type Row< L extends number, T extends any[] = [] > = T["length"] extends L ? T : Row; export type Builder = >(params: { path:string, cols:Count, load:(commitLoad:(id:string, data:Loaded)=>Sized, ...args:Sized)=>[id:string, data:Loaded], save:(commitSave:(...args:Sized)=>Sized, internal:Loaded) => Sized }) => { list:Record, load:()=>Promise, save:()=>Promise }