import { ODataMetadataType } from './types';
export declare const COLLECTION: RegExp;
export declare const PROPERTY: RegExp;
export declare const EXPAND: RegExp;
export type ODataContext = {
    serviceRootUrl?: string;
    metadataUrl?: string;
    entitySet?: string;
    key?: string;
    expand?: string;
    type?: string;
    property?: string;
    entity?: boolean;
};
export interface ODataVersionHelper {
    VALUE: string;
    ODATA_ANNOTATION_PREFIX: string;
    ODATA_FUNCTION_PREFIX: string;
    ODATA_ID: string;
    ODATA_TYPE: string;
    ODATA_COUNT: string;
    ODATA_ETAG: string;
    ODATA_CONTEXT: string;
    ODATA_MEDIA_ETAG: string;
    ODATA_NEXTLINK: string;
    ODATA_DEFERRED: string;
    ODATA_ANNOTATION: string;
    entity(value: {
        [name: string]: any;
    }): any;
    entities(value: {
        [name: string]: any;
    }): any;
    property(value: {
        [name: string]: any;
    }): any;
    annotations(value: {
        [name: string]: any;
    }): Map<string, any>;
    attributes(value: {
        [name: string]: any;
    }, metadata: ODataMetadataType): any;
    context(annots: Map<string, any> | {
        [name: string]: any;
    }): ODataContext;
    id(annots: Map<string, any> | {
        [name: string]: any;
    }): string | undefined;
    etag(annots: Map<string, any> | {
        [name: string]: any;
    }): string | undefined;
    type(annots: Map<string, any> | {
        [name: string]: any;
    }): string | undefined;
    count(annots: Map<string, any>): number | undefined;
    functions(annots: Map<string, any>): Map<string, any>;
    properties<T>(annots: Map<string, any>): Map<keyof T, Map<string, any>>;
    mediaEtag(annots: Map<string, any>): string | undefined;
    metadataEtag(annots: Map<string, any>): string | undefined;
    nextLink(annots: Map<string, any>): string | undefined;
    readLink(annots: Map<string, any>): string | undefined;
    mediaReadLink(annots: Map<string, any>): string | undefined;
    editLink(annots: Map<string, any>): string | undefined;
    mediaEditLink(annots: Map<string, any>): string | undefined;
    mediaContentType(annots: Map<string, any>): string | undefined;
    deltaLink(annots: Map<string, any>): string | undefined;
    countParam(): {
        [name: string]: string;
    };
}
export declare const ODataHelper: {
    "4.0": ODataVersionHelper;
    "3.0": ODataVersionHelper;
    "2.0": ODataVersionHelper;
};
