@holo-js/db 0.2.4 → 0.2.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.d.ts +292 -6
- package/dist/index.mjs +2753 -188
- package/package.json +7 -7
package/dist/index.d.ts
CHANGED
|
@@ -599,11 +599,13 @@ interface InsertQueryPlan {
|
|
|
599
599
|
readonly kind: 'insert';
|
|
600
600
|
readonly source: QuerySource;
|
|
601
601
|
readonly ignoreConflicts: boolean;
|
|
602
|
+
readonly returning?: boolean;
|
|
602
603
|
readonly values: readonly Record<string, unknown>[];
|
|
603
604
|
}
|
|
604
605
|
interface UpsertQueryPlan {
|
|
605
606
|
readonly kind: 'upsert';
|
|
606
607
|
readonly source: QuerySource;
|
|
608
|
+
readonly returning?: boolean;
|
|
607
609
|
readonly values: readonly Record<string, unknown>[];
|
|
608
610
|
readonly uniqueBy: readonly string[];
|
|
609
611
|
readonly updateColumns: readonly string[];
|
|
@@ -612,12 +614,14 @@ interface UpdateQueryPlan {
|
|
|
612
614
|
readonly kind: 'update';
|
|
613
615
|
readonly source: QuerySource;
|
|
614
616
|
readonly predicates: readonly QueryPredicateNode[];
|
|
617
|
+
readonly returning?: boolean;
|
|
615
618
|
readonly values: Readonly<Record<string, QueryUpdateValue>>;
|
|
616
619
|
}
|
|
617
620
|
interface DeleteQueryPlan {
|
|
618
621
|
readonly kind: 'delete';
|
|
619
622
|
readonly source: QuerySource;
|
|
620
623
|
readonly predicates: readonly QueryPredicateNode[];
|
|
624
|
+
readonly returning?: boolean;
|
|
621
625
|
}
|
|
622
626
|
type QueryPlan = SelectQueryPlan | InsertQueryPlan | UpsertQueryPlan | UpdateQueryPlan | DeleteQueryPlan;
|
|
623
627
|
interface QueryJsonUpdateOperation {
|
|
@@ -635,9 +639,14 @@ declare function withLimit(plan: SelectQueryPlan, limit?: number): SelectQueryPl
|
|
|
635
639
|
declare function withOffset(plan: SelectQueryPlan, offset?: number): SelectQueryPlan;
|
|
636
640
|
declare function createInsertQueryPlan(source: QuerySource, values: readonly Record<string, unknown>[], options?: {
|
|
637
641
|
ignoreConflicts?: boolean;
|
|
642
|
+
returning?: boolean;
|
|
638
643
|
}): InsertQueryPlan;
|
|
639
|
-
declare function createUpdateQueryPlan(source: QuerySource, predicates: readonly QueryPredicateNode[], values: Readonly<Record<string, unknown
|
|
640
|
-
|
|
644
|
+
declare function createUpdateQueryPlan(source: QuerySource, predicates: readonly QueryPredicateNode[], values: Readonly<Record<string, unknown>>, options?: {
|
|
645
|
+
readonly returning?: boolean;
|
|
646
|
+
}): UpdateQueryPlan;
|
|
647
|
+
declare function createDeleteQueryPlan(source: QuerySource, predicates: readonly QueryPredicateNode[], options?: {
|
|
648
|
+
readonly returning?: boolean;
|
|
649
|
+
}): DeleteQueryPlan;
|
|
641
650
|
|
|
642
651
|
type QueryCacheTtlInput = number | Date;
|
|
643
652
|
type QueryCacheFlexibleTtlInput = readonly [fresh: number, stale: number] | {
|
|
@@ -682,9 +691,189 @@ interface DatabaseDependencyCollectionResult<TValue> {
|
|
|
682
691
|
readonly value: TValue;
|
|
683
692
|
readonly dependencies: readonly string[];
|
|
684
693
|
}
|
|
694
|
+
interface DatabaseQueryPredicateObservation {
|
|
695
|
+
readonly column: string;
|
|
696
|
+
readonly operator: QueryOperator;
|
|
697
|
+
readonly value: unknown;
|
|
698
|
+
}
|
|
699
|
+
interface DatabaseQueryOrderObservation {
|
|
700
|
+
readonly column: string;
|
|
701
|
+
readonly direction: 'asc' | 'desc';
|
|
702
|
+
}
|
|
703
|
+
interface DatabaseQueryAggregateObservation {
|
|
704
|
+
readonly column?: string;
|
|
705
|
+
readonly count?: number;
|
|
706
|
+
readonly currentValueCount?: number;
|
|
707
|
+
readonly kind: 'avg' | 'count' | 'max' | 'min' | 'sum';
|
|
708
|
+
readonly output?: 'boolean' | 'inverseBoolean';
|
|
709
|
+
readonly sum?: number;
|
|
710
|
+
readonly valueCounts?: readonly DatabaseQueryAggregateValueCountObservation[];
|
|
711
|
+
}
|
|
712
|
+
interface DatabaseQueryAggregateValueCountObservation {
|
|
713
|
+
readonly count: number;
|
|
714
|
+
readonly value: number;
|
|
715
|
+
}
|
|
716
|
+
interface DatabaseQuerySelectionObservation {
|
|
717
|
+
readonly column: string;
|
|
718
|
+
readonly resultKey: string;
|
|
719
|
+
}
|
|
720
|
+
interface DatabaseQueryGroupedAggregateObservation {
|
|
721
|
+
readonly aggregateColumn?: string;
|
|
722
|
+
readonly aggregateResultKey: string;
|
|
723
|
+
readonly aggregateStates?: readonly DatabaseQueryGroupedAggregateStateObservation[];
|
|
724
|
+
readonly averageStates?: readonly DatabaseQueryGroupedAverageStateObservation[];
|
|
725
|
+
readonly groupColumn: string;
|
|
726
|
+
readonly groupResultKey: string;
|
|
727
|
+
readonly having?: DatabaseQueryGroupedAggregateHavingObservation;
|
|
728
|
+
readonly kind: 'avg' | 'count' | 'max' | 'min' | 'sum';
|
|
729
|
+
}
|
|
730
|
+
interface DatabaseQueryGroupedAggregateStateObservation {
|
|
731
|
+
readonly aggregateValue: number;
|
|
732
|
+
readonly groupValue: unknown;
|
|
733
|
+
readonly rowCount: number;
|
|
734
|
+
readonly valueCounts?: readonly DatabaseQueryGroupedAggregateValueCountObservation[];
|
|
735
|
+
}
|
|
736
|
+
interface DatabaseQueryGroupedAggregateValueCountObservation {
|
|
737
|
+
readonly count: number;
|
|
738
|
+
readonly value: number;
|
|
739
|
+
}
|
|
740
|
+
interface DatabaseQueryGroupedAverageStateObservation {
|
|
741
|
+
readonly count: number;
|
|
742
|
+
readonly groupValue: unknown;
|
|
743
|
+
readonly rowCount: number;
|
|
744
|
+
readonly sum: number;
|
|
745
|
+
}
|
|
746
|
+
interface DatabaseQueryGroupedAggregateHavingObservation {
|
|
747
|
+
readonly operator: Extract<QueryOperator, '<' | '<=' | '=' | '>' | '>='>;
|
|
748
|
+
readonly value: number;
|
|
749
|
+
}
|
|
750
|
+
type DatabaseQueryPaginationObservation = DatabaseQueryStandardPaginationObservation | DatabaseQuerySimplePaginationObservation | DatabaseQueryCursorPaginationObservation;
|
|
751
|
+
interface DatabaseQueryStandardPaginationObservation {
|
|
752
|
+
readonly currentPage: number;
|
|
753
|
+
readonly kind: 'standard';
|
|
754
|
+
readonly pageName: string;
|
|
755
|
+
readonly perPage: number;
|
|
756
|
+
readonly total: number;
|
|
757
|
+
}
|
|
758
|
+
interface DatabaseQuerySimplePaginationObservation {
|
|
759
|
+
readonly currentPage: number;
|
|
760
|
+
readonly hasMorePages: boolean;
|
|
761
|
+
readonly kind: 'simple';
|
|
762
|
+
readonly pageName: string;
|
|
763
|
+
readonly perPage: number;
|
|
764
|
+
readonly rowCount: number;
|
|
765
|
+
}
|
|
766
|
+
interface DatabaseQueryCursorPaginationObservation {
|
|
767
|
+
readonly cursorName: string;
|
|
768
|
+
readonly hasMorePages: boolean;
|
|
769
|
+
readonly kind: 'cursor';
|
|
770
|
+
readonly nextCursor: string | null;
|
|
771
|
+
readonly perPage: number;
|
|
772
|
+
readonly prevCursor: string | null;
|
|
773
|
+
readonly rows: readonly Readonly<Record<string, unknown>>[];
|
|
774
|
+
readonly rowCount: number;
|
|
775
|
+
}
|
|
776
|
+
type DatabaseQueryResultPathSegment = string | number;
|
|
777
|
+
interface DatabaseQueryObservation {
|
|
778
|
+
readonly aggregate?: DatabaseQueryAggregateObservation;
|
|
779
|
+
readonly belongsToHydrations?: readonly DatabaseQueryBelongsToHydrationObservation[];
|
|
780
|
+
readonly connectionName: string;
|
|
781
|
+
readonly cursorRowCount?: number;
|
|
782
|
+
readonly cursorRows?: readonly Readonly<Record<string, unknown>>[];
|
|
783
|
+
readonly tableName: string;
|
|
784
|
+
readonly dependencies: readonly string[];
|
|
785
|
+
readonly emptyRecordValue?: null;
|
|
786
|
+
readonly groupedAggregate?: DatabaseQueryGroupedAggregateObservation;
|
|
787
|
+
readonly limit?: number;
|
|
788
|
+
readonly offset?: number;
|
|
789
|
+
readonly orderBy: readonly DatabaseQueryOrderObservation[];
|
|
790
|
+
readonly patchable: boolean;
|
|
791
|
+
readonly pagination?: DatabaseQueryPaginationObservation;
|
|
792
|
+
readonly predicates: readonly DatabaseQueryPredicateObservation[];
|
|
793
|
+
readonly relation?: DatabaseQueryRelationObservation;
|
|
794
|
+
readonly result?: unknown;
|
|
795
|
+
readonly resultPath?: readonly DatabaseQueryResultPathSegment[];
|
|
796
|
+
readonly scalarColumn?: string;
|
|
797
|
+
readonly scalarListColumn?: string;
|
|
798
|
+
readonly scalarListRows?: readonly Readonly<Record<string, unknown>>[];
|
|
799
|
+
readonly relatedHydrations?: readonly DatabaseQueryRelatedHydrationObservation[];
|
|
800
|
+
readonly selections: readonly DatabaseQuerySelectionObservation[];
|
|
801
|
+
}
|
|
802
|
+
interface DatabaseQueryBelongsToHydrationObservation {
|
|
803
|
+
readonly foreignKey: string;
|
|
804
|
+
readonly ownerKey: string;
|
|
805
|
+
readonly relationKey: string;
|
|
806
|
+
readonly relatedConnectionName: string;
|
|
807
|
+
readonly relatedTableName: string;
|
|
808
|
+
}
|
|
809
|
+
interface DatabaseQueryRelatedHydrationObservation {
|
|
810
|
+
readonly foreignKey: string;
|
|
811
|
+
readonly kind: 'hasMany' | 'hasOne';
|
|
812
|
+
readonly localKey: string;
|
|
813
|
+
readonly orderBy: readonly DatabaseQueryOrderObservation[];
|
|
814
|
+
readonly predicates: readonly DatabaseQueryPredicateObservation[];
|
|
815
|
+
readonly relationKey: string;
|
|
816
|
+
readonly relatedConnectionName: string;
|
|
817
|
+
readonly relatedTableName: string;
|
|
818
|
+
}
|
|
819
|
+
type DatabaseQueryRelationObservation = DatabaseQueryBelongsToManyRelationObservation | DatabaseQueryBelongsToParentKeyRelationObservation;
|
|
820
|
+
interface DatabaseQueryBelongsToManyRelationObservation {
|
|
821
|
+
readonly foreignPivotKey: string;
|
|
822
|
+
readonly kind: 'belongsToMany';
|
|
823
|
+
readonly pivotAccessor: string;
|
|
824
|
+
readonly pivotColumns: readonly string[];
|
|
825
|
+
readonly pivotOrderBy: readonly DatabaseQueryOrderObservation[];
|
|
826
|
+
readonly relatedConnectionName: string;
|
|
827
|
+
readonly relatedKey: string;
|
|
828
|
+
readonly relatedPivotKey: string;
|
|
829
|
+
readonly relatedTableName: string;
|
|
830
|
+
}
|
|
831
|
+
interface DatabaseQueryBelongsToParentKeyRelationObservation {
|
|
832
|
+
readonly foreignKey: string;
|
|
833
|
+
readonly kind: 'belongsToParentKey';
|
|
834
|
+
readonly ownerKey: string;
|
|
835
|
+
readonly relationKey: string;
|
|
836
|
+
readonly relatedConnectionName: string;
|
|
837
|
+
readonly relatedTableName: string;
|
|
838
|
+
}
|
|
839
|
+
interface DatabaseMutationEvent {
|
|
840
|
+
readonly connectionName: string;
|
|
841
|
+
readonly tableName: string;
|
|
842
|
+
readonly kind: 'insert' | 'update' | 'delete' | 'upsert';
|
|
843
|
+
readonly predicates: readonly DatabaseQueryPredicateObservation[];
|
|
844
|
+
readonly previousRows?: readonly Readonly<Record<string, unknown>>[];
|
|
845
|
+
readonly rows?: readonly Readonly<Record<string, unknown>>[];
|
|
846
|
+
readonly values?: Readonly<Record<string, unknown>>;
|
|
847
|
+
}
|
|
848
|
+
type DatabaseDependencyPredicateMetadata = {
|
|
849
|
+
readonly tableKey: string;
|
|
850
|
+
readonly columnName: string;
|
|
851
|
+
readonly encodedValue: string;
|
|
852
|
+
};
|
|
853
|
+
type DatabaseDependencyInvalidationMetadata = {
|
|
854
|
+
readonly directDependencies: readonly string[];
|
|
855
|
+
readonly exactPredicates: readonly DatabaseDependencyPredicateMetadata[];
|
|
856
|
+
readonly hasMutationDependency: boolean;
|
|
857
|
+
readonly predicates: readonly DatabaseDependencyPredicateMetadata[];
|
|
858
|
+
readonly tableDependencies: readonly string[];
|
|
859
|
+
};
|
|
860
|
+
type DatabaseDependencyInvalidationEventWithMutations = DatabaseDependencyInvalidationEvent & {
|
|
861
|
+
readonly mutations?: readonly DatabaseMutationEvent[];
|
|
862
|
+
};
|
|
863
|
+
type DatabaseDependencyInvalidationEventInternal = DatabaseDependencyInvalidationEventWithMutations & {
|
|
864
|
+
readonly __holoDatabaseDependencyMetadata__?: DatabaseDependencyInvalidationMetadata;
|
|
865
|
+
};
|
|
866
|
+
type DatabaseDependencyInvalidationListenerInternal = (event: DatabaseDependencyInvalidationEventInternal) => void | Promise<void>;
|
|
867
|
+
type DatabaseDependencyCollectionResultInternal<TValue> = DatabaseDependencyCollectionResult<TValue> & {
|
|
868
|
+
readonly queries: readonly DatabaseQueryObservation[];
|
|
869
|
+
};
|
|
870
|
+
type DatabaseDependencyInvalidationPlan = {
|
|
871
|
+
readonly dependencies: readonly string[];
|
|
872
|
+
readonly metadata?: DatabaseDependencyInvalidationMetadata;
|
|
873
|
+
};
|
|
685
874
|
declare function getQueryCacheBridgeState(): {
|
|
686
875
|
bridge?: DatabaseQueryCacheBridge;
|
|
687
|
-
dependencyInvalidationListeners?: Set<
|
|
876
|
+
dependencyInvalidationListeners?: Set<DatabaseDependencyInvalidationListenerInternal>;
|
|
688
877
|
};
|
|
689
878
|
declare function configureDatabaseQueryCacheBridge(bridge?: DatabaseQueryCacheBridge): void;
|
|
690
879
|
declare function getDatabaseQueryCacheBridge(): DatabaseQueryCacheBridge | undefined;
|
|
@@ -692,29 +881,62 @@ declare function resetDatabaseQueryCacheBridge(): void;
|
|
|
692
881
|
declare function onDatabaseDependencyInvalidated(listener: DatabaseDependencyInvalidationListener): () => void;
|
|
693
882
|
declare function resetDatabaseDependencyInvalidationListeners(): void;
|
|
694
883
|
declare function collectDatabaseQueryDependencies<TValue>(callback: () => TValue | Promise<TValue>): Promise<DatabaseDependencyCollectionResult<TValue>>;
|
|
884
|
+
declare function collectDatabaseQueryDependenciesInternal<TValue>(callback: () => TValue | Promise<TValue>): Promise<DatabaseDependencyCollectionResultInternal<TValue>>;
|
|
885
|
+
declare function hasActiveDatabaseDependencyCollector(): boolean;
|
|
695
886
|
declare function recordDatabaseQueryDependencies(dependencies: readonly string[] | undefined): void;
|
|
696
|
-
declare function
|
|
887
|
+
declare function recordDatabaseQueryObservation(observation: DatabaseQueryObservation | undefined): void;
|
|
888
|
+
declare function rebindDatabaseQueryObservationResult(source: unknown, result: unknown): void;
|
|
889
|
+
declare function disableDatabaseQueryObservationPatching(source: unknown): void;
|
|
890
|
+
declare function rebindDatabaseQueryObservationScalar(source: unknown, result: unknown, column: string): void;
|
|
891
|
+
declare function rebindDatabaseQueryObservationScalarList(rows: readonly Readonly<Record<string, unknown>>[], result: readonly unknown[], column: string): void;
|
|
892
|
+
declare function hasDatabaseDependencyInvalidationListeners(): boolean;
|
|
893
|
+
declare function notifyDatabaseDependencyInvalidationListeners(event: DatabaseDependencyInvalidationEventInternal): Promise<void>;
|
|
697
894
|
declare function normalizeQueryCacheConfig(input: QueryCacheTtlInput | QueryCacheConfig): NormalizedQueryCacheConfig;
|
|
698
895
|
declare function createDeterministicQueryCacheKey(statement: CompiledStatement, connectionName: string): string;
|
|
699
896
|
declare function resolveQueryCacheKey(statement: CompiledStatement, connectionName: string, config: NormalizedQueryCacheConfig): string;
|
|
700
897
|
declare function createTableCacheDependency(connectionName: string, tableName: string): string;
|
|
898
|
+
declare function createTableRowCacheDependency(connectionName: string, tableName: string, columnName: string, value: unknown): string | undefined;
|
|
899
|
+
declare function createTableRowWildcardCacheDependency(connectionName: string, tableName: string): string;
|
|
900
|
+
declare function createTablePredicateCacheDependency(connectionName: string, tableName: string, columnName: string, value: unknown): string | undefined;
|
|
701
901
|
declare function normalizeQueryCacheDependencies(connectionName: string, dependencies: readonly string[]): readonly string[];
|
|
702
902
|
declare function supportsAutomaticPredicateInvalidation(predicate: QueryPredicateNode): boolean;
|
|
903
|
+
declare function createDatabaseQueryObservation(plan: SelectQueryPlan, connectionName: string, dependencies: readonly string[], result?: unknown, groupedAverageStates?: readonly DatabaseQueryGroupedAverageStateObservation[], groupedAggregateStates?: readonly DatabaseQueryGroupedAggregateStateObservation[]): DatabaseQueryObservation | undefined;
|
|
904
|
+
declare function createDatabaseMutationEvent(kind: DatabaseMutationEvent['kind'], connectionName: string, tableName: string, predicates?: readonly QueryPredicateNode[], values?: Readonly<Record<string, unknown>>, rows?: readonly Readonly<Record<string, unknown>>[], previousRows?: readonly Readonly<Record<string, unknown>>[]): DatabaseMutationEvent;
|
|
703
905
|
declare function supportsAutomaticQueryCacheInvalidation(plan: SelectQueryPlan): boolean;
|
|
704
906
|
declare function inferAutomaticQueryCacheDependencies(plan: SelectQueryPlan, connectionName: string): readonly string[] | undefined;
|
|
907
|
+
declare function inferAutomaticQueryCacheInvalidationDependencies(plan: SelectQueryPlan, connectionName: string, values?: Readonly<Record<string, unknown>>): readonly string[];
|
|
908
|
+
declare function inferAutomaticQueryCacheInvalidationPlan(plan: SelectQueryPlan, connectionName: string, values?: Readonly<Record<string, unknown>>, includeMetadata?: boolean): DatabaseDependencyInvalidationPlan;
|
|
909
|
+
declare function inferAutomaticInsertCacheInvalidationDependencies(connectionName: string, tableName: string, rows: readonly Readonly<Record<string, unknown>>[], lastInsertId?: number | string): readonly string[];
|
|
910
|
+
declare function inferAutomaticInsertCacheInvalidationPlan(connectionName: string, tableName: string, rows: readonly Readonly<Record<string, unknown>>[], lastInsertId?: number | string, includeMetadata?: boolean): DatabaseDependencyInvalidationPlan;
|
|
705
911
|
declare function resolveQueryCacheDependencies(plan: SelectQueryPlan, connectionName: string, explicit?: readonly string[]): readonly string[] | undefined;
|
|
706
912
|
declare const queryCacheInternals: {
|
|
707
|
-
collectDatabaseQueryDependencies: typeof
|
|
913
|
+
collectDatabaseQueryDependencies: typeof collectDatabaseQueryDependenciesInternal;
|
|
708
914
|
configureDatabaseQueryCacheBridge: typeof configureDatabaseQueryCacheBridge;
|
|
915
|
+
createDatabaseMutationEvent: typeof createDatabaseMutationEvent;
|
|
916
|
+
createDatabaseQueryObservation: typeof createDatabaseQueryObservation;
|
|
709
917
|
createDeterministicQueryCacheKey: typeof createDeterministicQueryCacheKey;
|
|
918
|
+
createTablePredicateCacheDependency: typeof createTablePredicateCacheDependency;
|
|
710
919
|
createTableCacheDependency: typeof createTableCacheDependency;
|
|
920
|
+
createTableRowCacheDependency: typeof createTableRowCacheDependency;
|
|
921
|
+
createTableRowWildcardCacheDependency: typeof createTableRowWildcardCacheDependency;
|
|
711
922
|
getQueryCacheBridgeState: typeof getQueryCacheBridgeState;
|
|
923
|
+
hasActiveDatabaseDependencyCollector: typeof hasActiveDatabaseDependencyCollector;
|
|
924
|
+
hasDatabaseDependencyInvalidationListeners: typeof hasDatabaseDependencyInvalidationListeners;
|
|
925
|
+
inferAutomaticInsertCacheInvalidationDependencies: typeof inferAutomaticInsertCacheInvalidationDependencies;
|
|
926
|
+
inferAutomaticInsertCacheInvalidationPlan: typeof inferAutomaticInsertCacheInvalidationPlan;
|
|
712
927
|
inferAutomaticQueryCacheDependencies: typeof inferAutomaticQueryCacheDependencies;
|
|
928
|
+
inferAutomaticQueryCacheInvalidationDependencies: typeof inferAutomaticQueryCacheInvalidationDependencies;
|
|
929
|
+
inferAutomaticQueryCacheInvalidationPlan: typeof inferAutomaticQueryCacheInvalidationPlan;
|
|
713
930
|
normalizeQueryCacheConfig: typeof normalizeQueryCacheConfig;
|
|
714
931
|
normalizeQueryCacheDependencies: typeof normalizeQueryCacheDependencies;
|
|
715
932
|
notifyDatabaseDependencyInvalidationListeners: typeof notifyDatabaseDependencyInvalidationListeners;
|
|
933
|
+
disableDatabaseQueryObservationPatching: typeof disableDatabaseQueryObservationPatching;
|
|
934
|
+
rebindDatabaseQueryObservationResult: typeof rebindDatabaseQueryObservationResult;
|
|
935
|
+
rebindDatabaseQueryObservationScalar: typeof rebindDatabaseQueryObservationScalar;
|
|
936
|
+
rebindDatabaseQueryObservationScalarList: typeof rebindDatabaseQueryObservationScalarList;
|
|
716
937
|
onDatabaseDependencyInvalidated: typeof onDatabaseDependencyInvalidated;
|
|
717
938
|
recordDatabaseQueryDependencies: typeof recordDatabaseQueryDependencies;
|
|
939
|
+
recordDatabaseQueryObservation: typeof recordDatabaseQueryObservation;
|
|
718
940
|
resolveQueryCacheDependencies: typeof resolveQueryCacheDependencies;
|
|
719
941
|
resolveQueryCacheKey: typeof resolveQueryCacheKey;
|
|
720
942
|
resetDatabaseDependencyInvalidationListeners: typeof resetDatabaseDependencyInvalidationListeners;
|
|
@@ -983,6 +1205,15 @@ declare class TableQueryBuilder<TTableOrName extends TableReference = string, TS
|
|
|
983
1205
|
dump(): TableQueryBuilder<TTableOrName, TSelectedRow>;
|
|
984
1206
|
cache(config: QueryCacheTtlInput | QueryCacheConfig): TableQueryBuilder<TTableOrName, TSelectedRow>;
|
|
985
1207
|
get<TRow extends Record<string, unknown> = TSelectedRow>(): Promise<TRow[]>;
|
|
1208
|
+
private recordCollectedQueryObservation;
|
|
1209
|
+
private readGroupedAverageStates;
|
|
1210
|
+
private readGroupedAggregateStates;
|
|
1211
|
+
private readGroupedAggregateValueCounts;
|
|
1212
|
+
private pushGroupedAggregateValueCount;
|
|
1213
|
+
private readGroupedAggregateValueCountsForGroup;
|
|
1214
|
+
private createGroupedAggregateStateValueSelection;
|
|
1215
|
+
private normalizeGroupedAggregateStateValue;
|
|
1216
|
+
private normalizeAggregateMetadataNumber;
|
|
986
1217
|
first<TRow extends Record<string, unknown> = TSelectedRow>(): Promise<TRow | undefined>;
|
|
987
1218
|
sole<TRow extends Record<string, unknown> = TSelectedRow>(): Promise<TRow>;
|
|
988
1219
|
paginate<TRow extends Record<string, unknown> = TSelectedRow>(perPage?: number, page?: number, options?: PaginationOptions): Promise<PaginatedResult<TRow>>;
|
|
@@ -1017,7 +1248,23 @@ declare class TableQueryBuilder<TTableOrName extends TableReference = string, TS
|
|
|
1017
1248
|
unsafeQuery<TRow extends Record<string, unknown> = Record<string, unknown>>(statement: Omit<UnsafeStatement, 'source'>): Promise<DriverQueryResult<TRow>>;
|
|
1018
1249
|
unsafeExecute(statement: Omit<UnsafeStatement, 'source'>): Promise<DriverExecutionResult>;
|
|
1019
1250
|
private clone;
|
|
1020
|
-
private
|
|
1251
|
+
private captureUpdatedMutationRows;
|
|
1252
|
+
private captureDeletedMutationRows;
|
|
1253
|
+
private applyCapturedUpdateValues;
|
|
1254
|
+
private applyCapturedUpdateValue;
|
|
1255
|
+
private applyCapturedJsonUpdateOperation;
|
|
1256
|
+
private isCapturedJsonUpdateOperation;
|
|
1257
|
+
private applyCapturedJsonPathValue;
|
|
1258
|
+
private isJsonRecord;
|
|
1259
|
+
private captureUpsertPreviousRows;
|
|
1260
|
+
private hasUniqueByValues;
|
|
1261
|
+
private rowsMatchUniqueBy;
|
|
1262
|
+
private shouldUseReturningMutationRows;
|
|
1263
|
+
private queryReturningMutationRows;
|
|
1264
|
+
private freezeMutationRows;
|
|
1265
|
+
private readReturnedLastInsertId;
|
|
1266
|
+
private invalidateInsertQueries;
|
|
1267
|
+
private invalidateMutationQueries;
|
|
1021
1268
|
private getCompiler;
|
|
1022
1269
|
private getUnpaginatedRows;
|
|
1023
1270
|
private resolvePrimaryKeyColumn;
|
|
@@ -1142,6 +1389,24 @@ declare class ModelRepository<TTable extends TableDefinition = TableDefinition>
|
|
|
1142
1389
|
applyRelationExistenceFilter(query: TableQueryBuilder<TTable, Record<string, unknown>>, filter: RelationFilter$1): TableQueryBuilder<TTable, Record<string, unknown>>;
|
|
1143
1390
|
loadMorphRelations(entities: readonly Entity<TTable>[], relationName: string, mapping: Readonly<Record<string, string | readonly string[] | Readonly<Record<string, RelationConstraint$1>>>>): Promise<void>;
|
|
1144
1391
|
loadRelationAggregates(entities: readonly Entity<TTable>[], aggregates: readonly AggregateLoad$1[]): Promise<void>;
|
|
1392
|
+
recordRelationAggregateObservations(entities: readonly Entity<TTable>[], aggregates: readonly AggregateLoad$1[], createPath: (index: number, key: string) => readonly DatabaseQueryResultPathSegment[]): void;
|
|
1393
|
+
recordRelationObservations(entities: readonly Entity<TTable>[], relations: readonly (string | EagerLoad$1)[], createPath: (index: number, relationName: string) => readonly DatabaseQueryResultPathSegment[]): void;
|
|
1394
|
+
private recordHasManyRelationObservations;
|
|
1395
|
+
private recordHasOneRelationObservations;
|
|
1396
|
+
private recordBelongsToRelationObservations;
|
|
1397
|
+
private createBelongsToParentKeyRelationObservation;
|
|
1398
|
+
private createNullableSingleRecordRelationObservation;
|
|
1399
|
+
private rememberHasManyRelationObservation;
|
|
1400
|
+
private rememberBelongsToRelationObservation;
|
|
1401
|
+
private getRelationQueryObservation;
|
|
1402
|
+
private createHasManyRelationObservation;
|
|
1403
|
+
private createBelongsToRelationObservation;
|
|
1404
|
+
private recordBelongsToManyRelationObservations;
|
|
1405
|
+
private createBelongsToManyRelatedObservationMetadata;
|
|
1406
|
+
private createRelationAggregateObservation;
|
|
1407
|
+
private setRelationAggregateObservationMetadata;
|
|
1408
|
+
private getRelationAggregateObservationMetadata;
|
|
1409
|
+
private createRelationAggregateObservationTarget;
|
|
1145
1410
|
create(values: Partial<ModelRecord<TTable>>): Promise<Entity<TTable>>;
|
|
1146
1411
|
createQuietly(values: Partial<ModelRecord<TTable>>): Promise<Entity<TTable>>;
|
|
1147
1412
|
createMany(values: readonly Partial<ModelRecord<TTable>>[]): Promise<ModelCollection<TTable>>;
|
|
@@ -1218,6 +1483,7 @@ declare class ModelRepository<TTable extends TableDefinition = TableDefinition>
|
|
|
1218
1483
|
private getAggregateAttributeKey;
|
|
1219
1484
|
private getRelationAggregateValues;
|
|
1220
1485
|
private computeAggregateValue;
|
|
1486
|
+
private computeExtremeAggregateValue;
|
|
1221
1487
|
private assertNumericAggregateValue;
|
|
1222
1488
|
private getRelatedEntitiesByParentKey;
|
|
1223
1489
|
attachCollection(entities: readonly Entity<TTable>[]): readonly Entity<TTable>[];
|
|
@@ -1253,6 +1519,7 @@ declare class ModelRepository<TTable extends TableDefinition = TableDefinition>
|
|
|
1253
1519
|
private getMorphToManyEntitiesByParentKey;
|
|
1254
1520
|
private getMorphedByManyEntitiesByParentKey;
|
|
1255
1521
|
private createBelongsToManyPivotQuery;
|
|
1522
|
+
private resolvePivotTableName;
|
|
1256
1523
|
private createMorphToManyPivotQuery;
|
|
1257
1524
|
private createMorphedByManyPivotQuery;
|
|
1258
1525
|
private applyPivotQueryConfig;
|
|
@@ -1522,6 +1789,7 @@ declare class ModelQueryBuilder<TTable extends TableDefinition = TableDefinition
|
|
|
1522
1789
|
dump(): ModelQueryBuilder<TTable, TRelations, TLoaded>;
|
|
1523
1790
|
cache(config: QueryCacheTtlInput | QueryCacheConfig): ModelQueryBuilder<TTable, TRelations, TLoaded>;
|
|
1524
1791
|
get(): Promise<ModelCollection<TTable, TRelations, EntityWithLoaded<TTable, TRelations, TLoaded>>>;
|
|
1792
|
+
private hydrateRows;
|
|
1525
1793
|
getJson(): Promise<SerializedEntityWithLoaded<TTable, TLoaded>[]>;
|
|
1526
1794
|
first(): Promise<EntityWithLoaded<TTable, TRelations, TLoaded> | undefined>;
|
|
1527
1795
|
firstJson(): Promise<SerializedEntityWithLoaded<TTable, TLoaded> | undefined>;
|
|
@@ -1597,6 +1865,23 @@ declare class ModelQueryBuilder<TTable extends TableDefinition = TableDefinition
|
|
|
1597
1865
|
private resolveBelongsToRelationName;
|
|
1598
1866
|
private extractNumericValues;
|
|
1599
1867
|
private getUnpaginatedEntities;
|
|
1868
|
+
private getUnpaginatedRowsAndEntities;
|
|
1869
|
+
private getRowsAndEntities;
|
|
1870
|
+
private recordCollectionRelationAggregateObservations;
|
|
1871
|
+
private recordCollectionRelationObservations;
|
|
1872
|
+
private recordSingleRelationObservations;
|
|
1873
|
+
private recordPaginatedRelationObservations;
|
|
1874
|
+
private recordSingleRelationAggregateObservations;
|
|
1875
|
+
private recordPaginatedRelationAggregateObservations;
|
|
1876
|
+
private canBindRowsToSerializedResultBase;
|
|
1877
|
+
private canBindRowsToSerializedResult;
|
|
1878
|
+
private createPatchableEagerRelationHydrations;
|
|
1879
|
+
private createPatchableRelatedHydrationQuery;
|
|
1880
|
+
private isQueryableModelReference;
|
|
1881
|
+
private rebindRowsToSerializedResult;
|
|
1882
|
+
private rebindRowsToPaginatedResult;
|
|
1883
|
+
private rebindRowsToSimplePaginatedResult;
|
|
1884
|
+
private rebindRowsToCursorPaginatedResult;
|
|
1600
1885
|
private prepareCursorPaginationQuery;
|
|
1601
1886
|
private resolveCursorOrders;
|
|
1602
1887
|
private readCursorColumnValue;
|
|
@@ -3290,6 +3575,7 @@ declare class SQLQueryCompiler {
|
|
|
3290
3575
|
protected compileInsertPrefix(_plan: InsertQueryPlan): string;
|
|
3291
3576
|
protected compileInsertSuffix(_plan: InsertQueryPlan): string;
|
|
3292
3577
|
protected compileUpsertSuffix(plan: UpsertQueryPlan, _insertColumns: readonly string[]): string;
|
|
3578
|
+
protected compileReturningClause(returning: boolean): string;
|
|
3293
3579
|
protected compileHavingExpression(expression: string): string;
|
|
3294
3580
|
protected compileColumnReference(reference: string): string;
|
|
3295
3581
|
protected compileTableReference(reference: string): string;
|