import { CosmosClientOptions } from '@azure/cosmos'; import { Type } from '@nestjs/common'; import { ModuleMetadata } from '@nestjs/common/interfaces'; export interface AzureCosmosDbOptions extends CosmosClientOptions { dbName: string; retryAttempts?: number; retryDelay?: number; connectionName?: string; } export interface AzureCosmosDbOptionsFactory { createAzureCosmosDbOptions(): Promise | AzureCosmosDbOptions; } export interface AzureCosmosDbModuleAsyncOptions extends Pick { connectionName?: string; useExisting?: Type; useClass?: Type; useFactory?: (...args: any[]) => Promise | AzureCosmosDbOptions; inject?: any[]; } declare type GeoJsonTypes = 'Point' | 'Polygon' | 'LineStrings'; export declare type Position = number[]; interface GeoJsonObject { type: GeoJsonTypes; } export declare class Point implements GeoJsonObject { type: 'Point'; coordinates: Position; } export declare class LineString implements GeoJsonObject { type: 'LineStrings'; coordinates: Position[]; } export declare class Polygon implements GeoJsonObject { type: 'Polygon'; coordinates: Position[][]; } export {};