import { Socket } from 'socket.io-client';
export default class IdentityMixin {
    static get credential(): import('../identity').APIKey | import('../identity').OAuth | import('../identity').BasicAuth | import('../identity').BearerToken;
    static get request(): import('axios').AxiosInstance;
    static get socket(): Socket;
    get request(): import('axios').AxiosInstance;
    get socket(): Socket;
    get credential(): import('../identity').APIKey | import('../identity').OAuth | import('../identity').BasicAuth | import('../identity').BearerToken;
    get baseUrl(): string;
}
export interface IFindOptions {
    query?: any;
    sort?: any;
    select?: any;
    limit?: number;
    skip?: number;
    populate?: IQueryPopulateOptions | IQueryPopulateOptions[];
}
export interface IFindOneOptions {
    query?: any;
    select?: any;
    populate?: IQueryPopulateOptions | IQueryPopulateOptions[];
}
export interface ICUDOneResult {
    total?: number;
    errors?: any[];
    data: string;
}
export interface ICUDResult {
    total?: number;
    errors?: any[];
    data: string[];
}
export interface IFindOneResult {
    errors?: any[];
    data: any;
}
export interface IFindResult {
    total?: number;
    errors?: any[];
    data: any[];
}
interface IQueryPopulateOptions {
    /** space delimited path(s) to populate */
    path: string;
    /** optional fields to select */
    select?: any;
    /** optional query conditions to match */
    match?: any;
    /** optional query options like sort, limit, etc */
    options?: any;
    /** deep populate */
    populate?: IQueryPopulateOptions | IQueryPopulateOptions[];
    /** optional, if true Mongoose will always set path to an array. Inferred from schema by default */
    justOne?: boolean;
}
export {};
