import { z } from "zod";
/**
 * Schema for a single option position.
 */
export declare const optionPositionSchema: z.ZodEffects<z.ZodObject<{
    underlying: z.ZodString;
    strike: z.ZodNumber;
    expiry: z.ZodString;
    option_type: z.ZodEnum<["call", "put"]>;
    style: z.ZodDefault<z.ZodEnum<["european", "american"]>>;
    quantity: z.ZodDefault<z.ZodEffects<z.ZodNumber, number, number>>;
    implied_volatility: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
    market_price: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
}, "strip", z.ZodTypeAny, {
    quantity: number;
    underlying: string;
    strike: number;
    expiry: string;
    option_type: "call" | "put";
    style: "european" | "american";
    implied_volatility?: number | null | undefined;
    market_price?: number | null | undefined;
}, {
    underlying: string;
    strike: number;
    expiry: string;
    option_type: "call" | "put";
    quantity?: number | undefined;
    style?: "european" | "american" | undefined;
    implied_volatility?: number | null | undefined;
    market_price?: number | null | undefined;
}>, {
    quantity: number;
    underlying: string;
    strike: number;
    expiry: string;
    option_type: "call" | "put";
    style: "european" | "american";
    implied_volatility?: number | null | undefined;
    market_price?: number | null | undefined;
}, {
    underlying: string;
    strike: number;
    expiry: string;
    option_type: "call" | "put";
    quantity?: number | undefined;
    style?: "european" | "american" | undefined;
    implied_volatility?: number | null | undefined;
    market_price?: number | null | undefined;
}>;
export type OptionPositionInput = z.infer<typeof optionPositionSchema>;
/**
 * Input schema for the `calculate_greeks` MCP tool.
 *
 * Calculates delta, gamma, theta, vega, and rho for individual options
 * or an options portfolio. PAID tier only.
 */
export declare const calculateGreeksSchema: z.ZodObject<{
    options: z.ZodArray<z.ZodEffects<z.ZodObject<{
        underlying: z.ZodString;
        strike: z.ZodNumber;
        expiry: z.ZodString;
        option_type: z.ZodEnum<["call", "put"]>;
        style: z.ZodDefault<z.ZodEnum<["european", "american"]>>;
        quantity: z.ZodDefault<z.ZodEffects<z.ZodNumber, number, number>>;
        implied_volatility: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
        market_price: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
    }, "strip", z.ZodTypeAny, {
        quantity: number;
        underlying: string;
        strike: number;
        expiry: string;
        option_type: "call" | "put";
        style: "european" | "american";
        implied_volatility?: number | null | undefined;
        market_price?: number | null | undefined;
    }, {
        underlying: string;
        strike: number;
        expiry: string;
        option_type: "call" | "put";
        quantity?: number | undefined;
        style?: "european" | "american" | undefined;
        implied_volatility?: number | null | undefined;
        market_price?: number | null | undefined;
    }>, {
        quantity: number;
        underlying: string;
        strike: number;
        expiry: string;
        option_type: "call" | "put";
        style: "european" | "american";
        implied_volatility?: number | null | undefined;
        market_price?: number | null | undefined;
    }, {
        underlying: string;
        strike: number;
        expiry: string;
        option_type: "call" | "put";
        quantity?: number | undefined;
        style?: "european" | "american" | undefined;
        implied_volatility?: number | null | undefined;
        market_price?: number | null | undefined;
    }>, "many">;
    risk_free_rate: z.ZodDefault<z.ZodNumber>;
}, "strip", z.ZodTypeAny, {
    options: {
        quantity: number;
        underlying: string;
        strike: number;
        expiry: string;
        option_type: "call" | "put";
        style: "european" | "american";
        implied_volatility?: number | null | undefined;
        market_price?: number | null | undefined;
    }[];
    risk_free_rate: number;
}, {
    options: {
        underlying: string;
        strike: number;
        expiry: string;
        option_type: "call" | "put";
        quantity?: number | undefined;
        style?: "european" | "american" | undefined;
        implied_volatility?: number | null | undefined;
        market_price?: number | null | undefined;
    }[];
    risk_free_rate?: number | undefined;
}>;
export type CalculateGreeksInput = z.infer<typeof calculateGreeksSchema>;
//# sourceMappingURL=calculate-greeks.d.ts.map