import { BunactylClient } from '../client';
import type { NodeResponse, NodesResponse, NodeConfiguration, CreateNodeRequest, UpdateNodeRequest, NodeInclude } from '../interfaces/nodes';
export declare class NodesResource {
    private client;
    constructor(client: BunactylClient);
    /**
     * List all nodes
     *
     * @param include Optional resources to include
     */
    list(include?: NodeInclude): Promise<NodesResponse>;
    /**
     * Get details for a specific node
     *
     * @param id Node ID
     * @param include Optional resources to include
     */
    getById(id: number | string, include?: NodeInclude): Promise<NodeResponse>;
    /**
     * Get node configuration
     *
     * @param id Node ID
     */
    getConfiguration(id: number | string): Promise<NodeConfiguration>;
    /**
     * Create a new node
     *
     * @param nodeData Node data
     */
    create(nodeData: CreateNodeRequest): Promise<NodeResponse>;
    /**
     * Update an existing node
     *
     * @param id Node ID
     * @param nodeData Node data
     */
    update(id: number | string, nodeData: UpdateNodeRequest): Promise<NodeResponse>;
    /**
     * Delete a node
     *
     * @param id Node ID
     */
    delete(id: number | string): Promise<void>;
}
//# sourceMappingURL=nodes.d.ts.map