import type { AuthParams, ScopeType, Stack, StackMutation } from '../../utils/types.js';
export declare const stacksUrl: string;
type ListStacksResponse = {
    ok: true;
    error: null;
    stacks: Stack[];
} | {
    ok: false;
    error: string;
    stacks: unknown;
};
export declare function listStacks(auth: AuthParams): Promise<ListStacksResponse>;
interface GetStackResponse {
    ok: boolean;
    error: string | null;
    stack: Stack;
    response?: Response;
}
export declare function getStack({ stackId, auth, }: {
    stackId: string;
    auth: AuthParams;
}): Promise<GetStackResponse>;
interface CreateStackResponse {
    ok: boolean;
    error: string | null;
    stack: Stack;
}
export declare function createStack({ stackMutation, auth, }: {
    stackMutation: StackMutation;
    auth: AuthParams;
}): Promise<CreateStackResponse>;
export declare function createEmptyStack({ token, scopeType, scopeId, name, }: {
    token: string;
    scopeType: ScopeType;
    scopeId: string;
    name: string;
}): Promise<Stack>;
interface UpdateStackResponse {
    ok: boolean;
    error: string | null;
    stack: Stack;
}
export declare function updateStack({ stackId, stackMutation, auth, }: {
    stackId: string;
    stackMutation: StackMutation;
    auth: AuthParams;
}): Promise<UpdateStackResponse>;
interface DestroyStackResponse {
    ok: boolean;
    error: string | null;
    stack: Stack;
}
export declare function destroyStack({ stackId, auth, }: {
    stackId: string;
    auth: AuthParams;
}): Promise<DestroyStackResponse>;
export {};
