import { z } from "zod";
/**
 * Relay-only pairing offer.
 *
 * `serverId` is a stable daemon identifier scoped to `PASEO_HOME`, and is also
 * used as the relay session identifier.
 */
export declare const ConnectionOfferV2Schema: z.ZodObject<{
    v: z.ZodLiteral<2>;
    serverId: z.ZodString;
    daemonPublicKeyB64: z.ZodString;
    relay: z.ZodObject<{
        endpoint: z.ZodString;
        useTls: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
    }, "strip", z.ZodTypeAny, {
        endpoint: string;
        useTls: boolean;
    }, {
        endpoint: string;
        useTls?: boolean | undefined;
    }>;
}, "strip", z.ZodTypeAny, {
    serverId: string;
    relay: {
        endpoint: string;
        useTls: boolean;
    };
    v: 2;
    daemonPublicKeyB64: string;
}, {
    serverId: string;
    relay: {
        endpoint: string;
        useTls?: boolean | undefined;
    };
    v: 2;
    daemonPublicKeyB64: string;
}>;
export type ConnectionOfferV2 = z.infer<typeof ConnectionOfferV2Schema>;
export declare const ConnectionOfferSchema: z.ZodObject<{
    v: z.ZodLiteral<2>;
    serverId: z.ZodString;
    daemonPublicKeyB64: z.ZodString;
    relay: z.ZodObject<{
        endpoint: z.ZodString;
        useTls: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
    }, "strip", z.ZodTypeAny, {
        endpoint: string;
        useTls: boolean;
    }, {
        endpoint: string;
        useTls?: boolean | undefined;
    }>;
}, "strip", z.ZodTypeAny, {
    serverId: string;
    relay: {
        endpoint: string;
        useTls: boolean;
    };
    v: 2;
    daemonPublicKeyB64: string;
}, {
    serverId: string;
    relay: {
        endpoint: string;
        useTls?: boolean | undefined;
    };
    v: 2;
    daemonPublicKeyB64: string;
}>;
export type ConnectionOffer = ConnectionOfferV2;
export declare function decodeOfferFragmentPayload(encoded: string): unknown;
/**
 * Parse a pairing-offer URL of the form `https://app.paseo.sh/#offer=<base64url>`.
 *
 * Returns `null` if the input has no `#offer=` fragment. Throws if the fragment
 * exists but the payload is malformed or fails schema validation.
 */
export declare function parseConnectionOfferFromUrl(input: string): ConnectionOffer | null;
//# sourceMappingURL=connection-offer.d.ts.map