/// <reference types="bluebird" />
import * as Promise from 'bluebird';
import { HudAiCreateAttributes, HudAiListAttributes, HudAiUpdateAttributes, Resource } from '../utils/Resource';
import { RequestManager } from '../RequestManager';
import { UserTemplate } from '../entities';
export interface UserTemplateListAttributes extends HudAiListAttributes {
    userId?: string;
    name?: string;
}
export interface UserTemplateCreateAttributes extends HudAiCreateAttributes {
    userId?: string;
    name: string;
    markdown: string;
}
export interface UserTemplateUpdateAttributes extends HudAiUpdateAttributes {
    userId?: string;
    name?: string;
    markdown?: string;
}
export declare class UserTemplateResource extends Resource<UserTemplate, UserTemplateListAttributes, UserTemplateCreateAttributes, UserTemplateUpdateAttributes> {
    constructor(requestManager: RequestManager);
    list(listArgs: UserTemplateListAttributes): Promise<{
        count: number;
        rows: UserTemplate[];
    }>;
    create(createArgs: UserTemplateCreateAttributes): Promise<UserTemplate>;
    get(templateId: string): Promise<UserTemplate>;
    update(id: string, updateArgs: UserTemplateUpdateAttributes): Promise<UserTemplate>;
    del(id: string): Promise<void>;
    destroy(id: string): Promise<void>;
}
