import { z } from 'zod';
import { CredentialType } from '@bubblelab/shared-schemas';
/**
 * Amazon Cart Item schema
 */
export declare const CartItemSchema: z.ZodObject<{
    asin: z.ZodString;
    title: z.ZodString;
    price: z.ZodString;
    quantity: z.ZodNumber;
    image: z.ZodOptional<z.ZodString>;
    url: z.ZodOptional<z.ZodString>;
}, "strip", z.ZodTypeAny, {
    title: string;
    price: string;
    quantity: number;
    asin: string;
    url?: string | undefined;
    image?: string | undefined;
}, {
    title: string;
    price: string;
    quantity: number;
    asin: string;
    url?: string | undefined;
    image?: string | undefined;
}>;
export type CartItem = z.infer<typeof CartItemSchema>;
/**
 * Amazon Shopping Tool parameters schema
 * Multi-operation tool for Amazon shopping automation
 */
export declare const AmazonShoppingToolParamsSchema: z.ZodDiscriminatedUnion<"operation", [z.ZodObject<{
    operation: z.ZodLiteral<"add_to_cart">;
    product_url: z.ZodString;
    quantity: z.ZodDefault<z.ZodOptional<z.ZodNumber>>;
    credentials: z.ZodOptional<z.ZodRecord<z.ZodNativeEnum<typeof CredentialType>, z.ZodString>>;
}, "strip", z.ZodTypeAny, {
    operation: "add_to_cart";
    quantity: number;
    product_url: string;
    credentials?: Partial<Record<CredentialType, string>> | undefined;
}, {
    operation: "add_to_cart";
    product_url: string;
    credentials?: Partial<Record<CredentialType, string>> | undefined;
    quantity?: number | undefined;
}>, z.ZodObject<{
    operation: z.ZodLiteral<"get_cart">;
    credentials: z.ZodOptional<z.ZodRecord<z.ZodNativeEnum<typeof CredentialType>, z.ZodString>>;
}, "strip", z.ZodTypeAny, {
    operation: "get_cart";
    credentials?: Partial<Record<CredentialType, string>> | undefined;
}, {
    operation: "get_cart";
    credentials?: Partial<Record<CredentialType, string>> | undefined;
}>, z.ZodObject<{
    operation: z.ZodLiteral<"checkout">;
    credentials: z.ZodOptional<z.ZodRecord<z.ZodNativeEnum<typeof CredentialType>, z.ZodString>>;
}, "strip", z.ZodTypeAny, {
    operation: "checkout";
    credentials?: Partial<Record<CredentialType, string>> | undefined;
}, {
    operation: "checkout";
    credentials?: Partial<Record<CredentialType, string>> | undefined;
}>, z.ZodObject<{
    operation: z.ZodLiteral<"search">;
    query: z.ZodString;
    max_results: z.ZodDefault<z.ZodOptional<z.ZodNumber>>;
    credentials: z.ZodOptional<z.ZodRecord<z.ZodNativeEnum<typeof CredentialType>, z.ZodString>>;
}, "strip", z.ZodTypeAny, {
    query: string;
    operation: "search";
    max_results: number;
    credentials?: Partial<Record<CredentialType, string>> | undefined;
}, {
    query: string;
    operation: "search";
    credentials?: Partial<Record<CredentialType, string>> | undefined;
    max_results?: number | undefined;
}>, z.ZodObject<{
    operation: z.ZodLiteral<"get_product">;
    product_url: z.ZodString;
    credentials: z.ZodOptional<z.ZodRecord<z.ZodNativeEnum<typeof CredentialType>, z.ZodString>>;
}, "strip", z.ZodTypeAny, {
    operation: "get_product";
    product_url: string;
    credentials?: Partial<Record<CredentialType, string>> | undefined;
}, {
    operation: "get_product";
    product_url: string;
    credentials?: Partial<Record<CredentialType, string>> | undefined;
}>, z.ZodObject<{
    operation: z.ZodLiteral<"screenshot">;
    url: z.ZodOptional<z.ZodString>;
    full_page: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
    credentials: z.ZodOptional<z.ZodRecord<z.ZodNativeEnum<typeof CredentialType>, z.ZodString>>;
}, "strip", z.ZodTypeAny, {
    operation: "screenshot";
    full_page: boolean;
    url?: string | undefined;
    credentials?: Partial<Record<CredentialType, string>> | undefined;
}, {
    operation: "screenshot";
    url?: string | undefined;
    credentials?: Partial<Record<CredentialType, string>> | undefined;
    full_page?: boolean | undefined;
}>]>;
/**
 * Search result item
 */
export declare const SearchResultSchema: z.ZodObject<{
    asin: z.ZodString;
    title: z.ZodString;
    price: z.ZodOptional<z.ZodString>;
    rating: z.ZodOptional<z.ZodString>;
    reviews_count: z.ZodOptional<z.ZodString>;
    url: z.ZodString;
    image: z.ZodOptional<z.ZodString>;
    prime: z.ZodOptional<z.ZodBoolean>;
}, "strip", z.ZodTypeAny, {
    title: string;
    url: string;
    asin: string;
    image?: string | undefined;
    rating?: string | undefined;
    price?: string | undefined;
    reviews_count?: string | undefined;
    prime?: boolean | undefined;
}, {
    title: string;
    url: string;
    asin: string;
    image?: string | undefined;
    rating?: string | undefined;
    price?: string | undefined;
    reviews_count?: string | undefined;
    prime?: boolean | undefined;
}>;
export type SearchResult = z.infer<typeof SearchResultSchema>;
/**
 * Product details
 */
export declare const ProductDetailsSchema: z.ZodObject<{
    asin: z.ZodString;
    title: z.ZodString;
    price: z.ZodOptional<z.ZodString>;
    rating: z.ZodOptional<z.ZodString>;
    reviews_count: z.ZodOptional<z.ZodString>;
    description: z.ZodOptional<z.ZodString>;
    features: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
    availability: z.ZodOptional<z.ZodString>;
    url: z.ZodString;
    images: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
}, "strip", z.ZodTypeAny, {
    title: string;
    url: string;
    asin: string;
    description?: string | undefined;
    images?: string[] | undefined;
    rating?: string | undefined;
    price?: string | undefined;
    reviews_count?: string | undefined;
    features?: string[] | undefined;
    availability?: string | undefined;
}, {
    title: string;
    url: string;
    asin: string;
    description?: string | undefined;
    images?: string[] | undefined;
    rating?: string | undefined;
    price?: string | undefined;
    reviews_count?: string | undefined;
    features?: string[] | undefined;
    availability?: string | undefined;
}>;
export type ProductDetails = z.infer<typeof ProductDetailsSchema>;
/**
 * Amazon Shopping Tool result schemas
 */
export declare const AmazonShoppingToolResultSchema: z.ZodDiscriminatedUnion<"operation", [z.ZodObject<{
    operation: z.ZodLiteral<"add_to_cart">;
    success: z.ZodBoolean;
    message: z.ZodOptional<z.ZodString>;
    cart_count: z.ZodOptional<z.ZodNumber>;
    error: z.ZodString;
}, "strip", z.ZodTypeAny, {
    error: string;
    success: boolean;
    operation: "add_to_cart";
    message?: string | undefined;
    cart_count?: number | undefined;
}, {
    error: string;
    success: boolean;
    operation: "add_to_cart";
    message?: string | undefined;
    cart_count?: number | undefined;
}>, z.ZodObject<{
    operation: z.ZodLiteral<"get_cart">;
    success: z.ZodBoolean;
    items: z.ZodOptional<z.ZodArray<z.ZodObject<{
        asin: z.ZodString;
        title: z.ZodString;
        price: z.ZodString;
        quantity: z.ZodNumber;
        image: z.ZodOptional<z.ZodString>;
        url: z.ZodOptional<z.ZodString>;
    }, "strip", z.ZodTypeAny, {
        title: string;
        price: string;
        quantity: number;
        asin: string;
        url?: string | undefined;
        image?: string | undefined;
    }, {
        title: string;
        price: string;
        quantity: number;
        asin: string;
        url?: string | undefined;
        image?: string | undefined;
    }>, "many">>;
    subtotal: z.ZodOptional<z.ZodString>;
    total_items: z.ZodOptional<z.ZodNumber>;
    screenshot_url: z.ZodOptional<z.ZodString>;
    error: z.ZodString;
}, "strip", z.ZodTypeAny, {
    error: string;
    success: boolean;
    operation: "get_cart";
    items?: {
        title: string;
        price: string;
        quantity: number;
        asin: string;
        url?: string | undefined;
        image?: string | undefined;
    }[] | undefined;
    subtotal?: string | undefined;
    total_items?: number | undefined;
    screenshot_url?: string | undefined;
}, {
    error: string;
    success: boolean;
    operation: "get_cart";
    items?: {
        title: string;
        price: string;
        quantity: number;
        asin: string;
        url?: string | undefined;
        image?: string | undefined;
    }[] | undefined;
    subtotal?: string | undefined;
    total_items?: number | undefined;
    screenshot_url?: string | undefined;
}>, z.ZodObject<{
    operation: z.ZodLiteral<"checkout">;
    success: z.ZodBoolean;
    order_number: z.ZodOptional<z.ZodString>;
    estimated_delivery: z.ZodOptional<z.ZodString>;
    total: z.ZodOptional<z.ZodString>;
    subtotal: z.ZodOptional<z.ZodString>;
    shipping_cost: z.ZodOptional<z.ZodString>;
    tax: z.ZodOptional<z.ZodString>;
    shipping_address: z.ZodOptional<z.ZodString>;
    payment_method: z.ZodOptional<z.ZodString>;
    items: z.ZodOptional<z.ZodArray<z.ZodObject<{
        title: z.ZodString;
        quantity: z.ZodOptional<z.ZodNumber>;
        price: z.ZodOptional<z.ZodString>;
    }, "strip", z.ZodTypeAny, {
        title: string;
        price?: string | undefined;
        quantity?: number | undefined;
    }, {
        title: string;
        price?: string | undefined;
        quantity?: number | undefined;
    }>, "many">>;
    screenshot_url: z.ZodOptional<z.ZodString>;
    error: z.ZodString;
}, "strip", z.ZodTypeAny, {
    error: string;
    success: boolean;
    operation: "checkout";
    items?: {
        title: string;
        price?: string | undefined;
        quantity?: number | undefined;
    }[] | undefined;
    total?: string | undefined;
    subtotal?: string | undefined;
    screenshot_url?: string | undefined;
    order_number?: string | undefined;
    estimated_delivery?: string | undefined;
    shipping_cost?: string | undefined;
    tax?: string | undefined;
    shipping_address?: string | undefined;
    payment_method?: string | undefined;
}, {
    error: string;
    success: boolean;
    operation: "checkout";
    items?: {
        title: string;
        price?: string | undefined;
        quantity?: number | undefined;
    }[] | undefined;
    total?: string | undefined;
    subtotal?: string | undefined;
    screenshot_url?: string | undefined;
    order_number?: string | undefined;
    estimated_delivery?: string | undefined;
    shipping_cost?: string | undefined;
    tax?: string | undefined;
    shipping_address?: string | undefined;
    payment_method?: string | undefined;
}>, z.ZodObject<{
    operation: z.ZodLiteral<"search">;
    success: z.ZodBoolean;
    results: z.ZodOptional<z.ZodArray<z.ZodObject<{
        asin: z.ZodString;
        title: z.ZodString;
        price: z.ZodOptional<z.ZodString>;
        rating: z.ZodOptional<z.ZodString>;
        reviews_count: z.ZodOptional<z.ZodString>;
        url: z.ZodString;
        image: z.ZodOptional<z.ZodString>;
        prime: z.ZodOptional<z.ZodBoolean>;
    }, "strip", z.ZodTypeAny, {
        title: string;
        url: string;
        asin: string;
        image?: string | undefined;
        rating?: string | undefined;
        price?: string | undefined;
        reviews_count?: string | undefined;
        prime?: boolean | undefined;
    }, {
        title: string;
        url: string;
        asin: string;
        image?: string | undefined;
        rating?: string | undefined;
        price?: string | undefined;
        reviews_count?: string | undefined;
        prime?: boolean | undefined;
    }>, "many">>;
    total_results: z.ZodOptional<z.ZodNumber>;
    error: z.ZodString;
}, "strip", z.ZodTypeAny, {
    error: string;
    success: boolean;
    operation: "search";
    results?: {
        title: string;
        url: string;
        asin: string;
        image?: string | undefined;
        rating?: string | undefined;
        price?: string | undefined;
        reviews_count?: string | undefined;
        prime?: boolean | undefined;
    }[] | undefined;
    total_results?: number | undefined;
}, {
    error: string;
    success: boolean;
    operation: "search";
    results?: {
        title: string;
        url: string;
        asin: string;
        image?: string | undefined;
        rating?: string | undefined;
        price?: string | undefined;
        reviews_count?: string | undefined;
        prime?: boolean | undefined;
    }[] | undefined;
    total_results?: number | undefined;
}>, z.ZodObject<{
    operation: z.ZodLiteral<"get_product">;
    success: z.ZodBoolean;
    product: z.ZodOptional<z.ZodObject<{
        asin: z.ZodString;
        title: z.ZodString;
        price: z.ZodOptional<z.ZodString>;
        rating: z.ZodOptional<z.ZodString>;
        reviews_count: z.ZodOptional<z.ZodString>;
        description: z.ZodOptional<z.ZodString>;
        features: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
        availability: z.ZodOptional<z.ZodString>;
        url: z.ZodString;
        images: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
    }, "strip", z.ZodTypeAny, {
        title: string;
        url: string;
        asin: string;
        description?: string | undefined;
        images?: string[] | undefined;
        rating?: string | undefined;
        price?: string | undefined;
        reviews_count?: string | undefined;
        features?: string[] | undefined;
        availability?: string | undefined;
    }, {
        title: string;
        url: string;
        asin: string;
        description?: string | undefined;
        images?: string[] | undefined;
        rating?: string | undefined;
        price?: string | undefined;
        reviews_count?: string | undefined;
        features?: string[] | undefined;
        availability?: string | undefined;
    }>>;
    error: z.ZodString;
}, "strip", z.ZodTypeAny, {
    error: string;
    success: boolean;
    operation: "get_product";
    product?: {
        title: string;
        url: string;
        asin: string;
        description?: string | undefined;
        images?: string[] | undefined;
        rating?: string | undefined;
        price?: string | undefined;
        reviews_count?: string | undefined;
        features?: string[] | undefined;
        availability?: string | undefined;
    } | undefined;
}, {
    error: string;
    success: boolean;
    operation: "get_product";
    product?: {
        title: string;
        url: string;
        asin: string;
        description?: string | undefined;
        images?: string[] | undefined;
        rating?: string | undefined;
        price?: string | undefined;
        reviews_count?: string | undefined;
        features?: string[] | undefined;
        availability?: string | undefined;
    } | undefined;
}>, z.ZodObject<{
    operation: z.ZodLiteral<"screenshot">;
    success: z.ZodBoolean;
    screenshot_url: z.ZodOptional<z.ZodString>;
    error: z.ZodString;
}, "strip", z.ZodTypeAny, {
    error: string;
    success: boolean;
    operation: "screenshot";
    screenshot_url?: string | undefined;
}, {
    error: string;
    success: boolean;
    operation: "screenshot";
    screenshot_url?: string | undefined;
}>]>;
export type AmazonShoppingToolParams = z.output<typeof AmazonShoppingToolParamsSchema>;
export type AmazonShoppingToolParamsInput = z.input<typeof AmazonShoppingToolParamsSchema>;
export type AmazonShoppingToolResult = z.output<typeof AmazonShoppingToolResultSchema>;
//# sourceMappingURL=amazon-shopping-tool.schema.d.ts.map