@@ -63,6 +63,12 @@ export interface Collection<T = undefined, N = string> {
6363   * are returned. Use `wvc.QueryReference` to specify which references to return. 
6464   */ 
6565  iterator : ( opts ?: IteratorOptions < T > )  =>  Iterator < T > ; 
66+   /** 
67+    * Use this method to return the total number of objects in the collection. 
68+    * 
69+    * This is a short-hand for calling `collection.aggregate.overAll().then(({ totalCount }) => totalCount)`. 
70+    */ 
71+   length : ( )  =>  Promise < number > ; 
6672  /** 
6773   * Use this method to return a collection object specific to a single consistency level. 
6874   * 
@@ -111,9 +117,16 @@ const collection = <T, N>(
111117    throw  new  WeaviateInvalidInputError ( `The collection name must be a string, got: ${ typeof  name }  ` ) ; 
112118  } 
113119  const  capitalizedName  =  capitalizeCollectionName ( name ) ; 
120+   const  aggregateCollection  =  aggregate < T > ( 
121+     connection , 
122+     capitalizedName , 
123+     dbVersionSupport , 
124+     consistencyLevel , 
125+     tenant 
126+   ) ; 
114127  const  queryCollection  =  query < T > ( connection ,  capitalizedName ,  dbVersionSupport ,  consistencyLevel ,  tenant ) ; 
115128  return  { 
116-     aggregate : aggregate < T > ( connection ,   capitalizedName ,   dbVersionSupport ,   consistencyLevel ,   tenant ) , 
129+     aggregate : aggregateCollection , 
117130    backup : backupCollection ( connection ,  capitalizedName ) , 
118131    config : config < T > ( connection ,  capitalizedName ,  dbVersionSupport ,  tenant ) , 
119132    data : data < T > ( connection ,  capitalizedName ,  dbVersionSupport ,  consistencyLevel ,  tenant ) , 
@@ -139,6 +152,7 @@ const collection = <T, N>(
139152          } ) 
140153          . then ( ( res )  =>  res . objects ) 
141154      ) , 
155+     length : ( )  =>  aggregateCollection . overAll ( ) . then ( ( {  totalCount } )  =>  totalCount ) , 
142156    withConsistency : ( consistencyLevel : ConsistencyLevel )  => 
143157      collection < T ,  N > ( connection ,  capitalizedName ,  dbVersionSupport ,  consistencyLevel ,  tenant ) , 
144158    withTenant : < TT  extends  TenantBase > ( tenant : string  |  TT )  => 
0 commit comments