/**
 * studiograph admin token — manage CLI API tokens for a Studiograph server.
 *
 * Today: just `issue <server-url>`. Future subcommands (revoke, list) can
 * accumulate here when the workflow calls for them.
 *
 * The `issue` flow:
 *   1. Owner provides email/password (flags, env vars, or interactive prompt).
 *   2. POST /api/auth/login → JWT cookie.
 *   3. mintAndStoreCliToken() POSTs /api/auth/tokens with the cookie and
 *      persists the resulting sg_ token to ~/.studiograph/user.json.
 *
 * Once the token is stored, `pull --remote` / `push --remote` resolve it
 * automatically and the CLI runs non-interactively.
 *
 * Pairs with `studiograph deploy`: after deploy completes and the owner
 * creates their account via the web UI setup form, they run
 *   studiograph admin token issue <server-url>
 * from their laptop to bootstrap CLI auth.
 */
import { Command } from 'commander';
/**
 * Exchange email/password for a JWT session cookie and mint+persist an sg_
 * CLI token from it. Exported (not a private helper) so tests can exercise
 * the login → mint flow without booting a real server or commander.
 *
 * On success: returns `{ ok: true, token, tokenName }` and the token has
 * already been persisted via `mintAndStoreCliToken`.
 * On failure: returns `{ ok: false, reason }` and nothing has been written.
 */
export declare function issueCliToken(serverUrl: string, email: string, password: string, opts?: {
    name?: string;
    fetchFn?: typeof fetch;
}): Promise<{
    ok: true;
    token: string;
    tokenName: string;
} | {
    ok: false;
    reason: string;
}>;
export declare const adminTokenCommand: Command;
