import { z } from 'zod';
import { Forex } from '@gviper/alphavantage-api';
declare const ForexIntradayParamsSchema: z.ZodObject<{
    from_symbol: z.ZodString;
    to_symbol: z.ZodString;
    interval: z.ZodEnum<["1min", "5min", "15min", "30min", "60min"]>;
    outputsize: z.ZodOptional<z.ZodEnum<["compact", "full"]>>;
    datatype: z.ZodOptional<z.ZodEnum<["json", "csv"]>>;
}, "strip", z.ZodTypeAny, {
    interval: "1min" | "5min" | "15min" | "30min" | "60min";
    from_symbol: string;
    to_symbol: string;
    outputsize?: "compact" | "full" | undefined;
    datatype?: "json" | "csv" | undefined;
}, {
    interval: "1min" | "5min" | "15min" | "30min" | "60min";
    from_symbol: string;
    to_symbol: string;
    outputsize?: "compact" | "full" | undefined;
    datatype?: "json" | "csv" | undefined;
}>;
declare const ForexDailyParamsSchema: z.ZodObject<{
    from_symbol: z.ZodString;
    to_symbol: z.ZodString;
    outputsize: z.ZodOptional<z.ZodEnum<["compact", "full"]>>;
    datatype: z.ZodOptional<z.ZodEnum<["json", "csv"]>>;
}, "strip", z.ZodTypeAny, {
    from_symbol: string;
    to_symbol: string;
    outputsize?: "compact" | "full" | undefined;
    datatype?: "json" | "csv" | undefined;
}, {
    from_symbol: string;
    to_symbol: string;
    outputsize?: "compact" | "full" | undefined;
    datatype?: "json" | "csv" | undefined;
}>;
declare const ForexExchangeRateParamsSchema: z.ZodObject<{
    from_currency: z.ZodString;
    to_currency: z.ZodString;
}, "strip", z.ZodTypeAny, {
    from_currency: string;
    to_currency: string;
}, {
    from_currency: string;
    to_currency: string;
}>;
export declare function createForexTools(forex: Forex): {
    av_forex_intraday: {
        description: string;
        inputSchema: z.ZodObject<{
            from_symbol: z.ZodString;
            to_symbol: z.ZodString;
            interval: z.ZodEnum<["1min", "5min", "15min", "30min", "60min"]>;
            outputsize: z.ZodOptional<z.ZodEnum<["compact", "full"]>>;
            datatype: z.ZodOptional<z.ZodEnum<["json", "csv"]>>;
        }, "strip", z.ZodTypeAny, {
            interval: "1min" | "5min" | "15min" | "30min" | "60min";
            from_symbol: string;
            to_symbol: string;
            outputsize?: "compact" | "full" | undefined;
            datatype?: "json" | "csv" | undefined;
        }, {
            interval: "1min" | "5min" | "15min" | "30min" | "60min";
            from_symbol: string;
            to_symbol: string;
            outputsize?: "compact" | "full" | undefined;
            datatype?: "json" | "csv" | undefined;
        }>;
        handler: (params: z.infer<typeof ForexIntradayParamsSchema>) => Promise<import("@gviper/alphavantage-api").ForexIntradayResponse>;
    };
    av_forex_daily: {
        description: string;
        inputSchema: z.ZodObject<{
            from_symbol: z.ZodString;
            to_symbol: z.ZodString;
            outputsize: z.ZodOptional<z.ZodEnum<["compact", "full"]>>;
            datatype: z.ZodOptional<z.ZodEnum<["json", "csv"]>>;
        }, "strip", z.ZodTypeAny, {
            from_symbol: string;
            to_symbol: string;
            outputsize?: "compact" | "full" | undefined;
            datatype?: "json" | "csv" | undefined;
        }, {
            from_symbol: string;
            to_symbol: string;
            outputsize?: "compact" | "full" | undefined;
            datatype?: "json" | "csv" | undefined;
        }>;
        handler: (params: z.infer<typeof ForexDailyParamsSchema>) => Promise<import("@gviper/alphavantage-api").ForexDailyResponse>;
    };
    av_forex_weekly: {
        description: string;
        inputSchema: z.ZodObject<{
            from_symbol: z.ZodString;
            to_symbol: z.ZodString;
            outputsize: z.ZodOptional<z.ZodEnum<["compact", "full"]>>;
            datatype: z.ZodOptional<z.ZodEnum<["json", "csv"]>>;
        }, "strip", z.ZodTypeAny, {
            from_symbol: string;
            to_symbol: string;
            outputsize?: "compact" | "full" | undefined;
            datatype?: "json" | "csv" | undefined;
        }, {
            from_symbol: string;
            to_symbol: string;
            outputsize?: "compact" | "full" | undefined;
            datatype?: "json" | "csv" | undefined;
        }>;
        handler: (params: z.infer<typeof ForexDailyParamsSchema>) => Promise<import("@gviper/alphavantage-api").ForexWeeklyResponse>;
    };
    av_forex_monthly: {
        description: string;
        inputSchema: z.ZodObject<{
            from_symbol: z.ZodString;
            to_symbol: z.ZodString;
            outputsize: z.ZodOptional<z.ZodEnum<["compact", "full"]>>;
            datatype: z.ZodOptional<z.ZodEnum<["json", "csv"]>>;
        }, "strip", z.ZodTypeAny, {
            from_symbol: string;
            to_symbol: string;
            outputsize?: "compact" | "full" | undefined;
            datatype?: "json" | "csv" | undefined;
        }, {
            from_symbol: string;
            to_symbol: string;
            outputsize?: "compact" | "full" | undefined;
            datatype?: "json" | "csv" | undefined;
        }>;
        handler: (params: z.infer<typeof ForexDailyParamsSchema>) => Promise<import("@gviper/alphavantage-api").ForexMonthlyResponse>;
    };
    av_forex_exchange_rate: {
        description: string;
        inputSchema: z.ZodObject<{
            from_currency: z.ZodString;
            to_currency: z.ZodString;
        }, "strip", z.ZodTypeAny, {
            from_currency: string;
            to_currency: string;
        }, {
            from_currency: string;
            to_currency: string;
        }>;
        handler: (params: z.infer<typeof ForexExchangeRateParamsSchema>) => Promise<import("@gviper/alphavantage-api").ExchangeRateResponse>;
    };
};
export {};
//# sourceMappingURL=forex.d.ts.map