import { Connection } from "./connection"; export declare enum ViewType { ARANGOSEARCH_VIEW = "arangosearch" } export interface ArangoView { isArangoView: true; name: string; } export interface ArangoViewResponse { name: string; id: string; type: ViewType; } interface ArangoSearchConsolidate { threshold: number; segmentThreshold: number; } interface ArangoSearchCollectionLink { analyzers?: string[]; fields?: { [key: string]: ArangoSearchCollectionLink | undefined; }; includeAllFields?: boolean; trackListPositions?: boolean; storeValues?: "none" | "id"; } export interface ArangoSearchProperties { locale: string; commit: { consolidate: { count?: ArangoSearchConsolidate; bytes?: ArangoSearchConsolidate; bytes_accum?: ArangoSearchConsolidate; fill?: ArangoSearchConsolidate; }; commitIntervalMsec?: number; cleanupIntervalStep?: number; }; links: { [key: string]: ArangoSearchCollectionLink | undefined; }; } export interface ArangoSearchPropertiesResponse extends ArangoSearchProperties, ArangoViewResponse { type: ViewType.ARANGOSEARCH_VIEW; } export interface ArangoSearchPropertiesOptions { locale?: string; commit?: { consolidate?: "none" | { count?: Partial; bytes?: Partial; bytes_accum?: Partial; fill?: Partial; }; commitIntervalMsec?: number; cleanupIntervalStep?: number; }; links?: { [key: string]: ArangoSearchCollectionLink | undefined; }; } export declare abstract class BaseView implements ArangoView { isArangoView: true; name: string; abstract type: ViewType; protected _connection: Connection; constructor(connection: Connection, name: string); get(): Promise; exists(): Promise; rename(name: string): Promise; drop(): Promise; } export declare class ArangoSearchView extends BaseView { type: ViewType; create(properties?: ArangoSearchPropertiesOptions): Promise; properties(): Promise; setProperties(properties?: ArangoSearchPropertiesOptions): Promise; replaceProperties(properties?: ArangoSearchPropertiesOptions): Promise; } export declare function constructView(connection: Connection, data: any): ArangoView; export {}; //# sourceMappingURL=view.d.ts.map