import { ISailsFuncParam, ISailsService, ISailsServiceEvent, ISailsServiceFunc } from 'sails-js-types';
import { EnumVariant, WithDef } from './types.js';
import { Base } from './visitor.js';
export declare class Service extends Base implements ISailsService {
    readonly funcs: ISailsServiceFunc[];
    readonly events: ServiceEvent[];
    readonly name: string;
    constructor(ptr: number, memory: WebAssembly.Memory);
    addFunc(func: ServiceFunc): void;
    addEvent(event: ServiceEvent): void;
}
export declare class ServiceEvent extends EnumVariant implements ISailsServiceEvent {
}
export declare class ServiceFunc extends WithDef implements ISailsServiceFunc {
    readonly name: string;
    readonly isQuery: boolean;
    readonly docs?: string;
    private _params;
    constructor(ptr: number, memory: WebAssembly.Memory);
    addFuncParam(ptr: number, param: FuncParam): void;
    get params(): ISailsFuncParam[];
}
export declare class FuncParam extends WithDef implements ISailsFuncParam {
    readonly name: string;
    constructor(ptr: number, memory: WebAssembly.Memory);
}
