import * as Schema from "effect/Schema";
export declare const GetProductsSearchInput: Schema.Struct<{
    readonly expand: Schema.optional<Schema.String>;
    readonly limit: Schema.optional<Schema.Number>;
    readonly page: Schema.optional<Schema.String>;
    readonly query: Schema.String;
}>;
export type GetProductsSearchInput = typeof GetProductsSearchInput.Type;
export declare const GetProductsSearchOutput: Schema.Struct<{
    readonly data: Schema.$Array<Schema.Struct<{
        readonly active: Schema.Boolean;
        readonly created: Schema.Number;
        readonly default_price: Schema.optional<Schema.Unknown>;
        readonly description: Schema.NullOr<Schema.String>;
        readonly id: Schema.String;
        readonly images: Schema.$Array<Schema.String>;
        readonly livemode: Schema.Boolean;
        readonly marketing_features: Schema.$Array<Schema.Struct<{
            readonly name: Schema.optional<Schema.String>;
        }>>;
        readonly metadata: Schema.$Record<Schema.String, Schema.String>;
        readonly name: Schema.String;
        readonly object: Schema.Literals<readonly ["product"]>;
        readonly package_dimensions: Schema.Unknown;
        readonly shippable: Schema.NullOr<Schema.Boolean>;
        readonly statement_descriptor: Schema.optional<Schema.NullOr<Schema.String>>;
        readonly tax_code: Schema.optional<Schema.Unknown>;
        readonly type: Schema.Literals<readonly ["good", "service"]>;
        readonly unit_label: Schema.optional<Schema.NullOr<Schema.String>>;
        readonly updated: Schema.Number;
        readonly url: Schema.NullOr<Schema.String>;
    }>>;
    readonly has_more: Schema.Boolean;
    readonly next_page: Schema.NullOr<Schema.String>;
    readonly object: Schema.Literals<readonly ["search_result"]>;
    readonly total_count: Schema.optional<Schema.Number>;
    readonly url: Schema.String;
}>;
export type GetProductsSearchOutput = typeof GetProductsSearchOutput.Type;
/**
 * Search products
 *
 * <p>Search for products you’ve previously created using Stripe’s <a href="/docs/search#search-query-language">Search Query Language</a>.
 * Don’t use search in read-after-write flows where strict consistency is necessary. Under normal operating
 * conditions, data is searchable in less than a minute. Occasionally, propagation of new or updated data can be up
 * to an hour behind during outages. Search functionality is not available to merchants in India.</p>
 *
 * @param expand - Specifies which fields in the response should be expanded.
 * @param limit - A limit on the number of objects to be returned. Limit can range between 1 and 100, and the default is 10.
 * @param page - A cursor for pagination across multiple pages of results. Don't include this parameter on the first call. Use the next_page value returned in a previous response to request subsequent results.
 * @param query - The search query string. See [search query language](https://docs.stripe.com/search#search-query-language) and the list of supported [query fields for products](https://docs.stripe.com/search#query-fields-for-products).
 */
export declare const GetProductsSearch: import("@distilled.cloud/core/client").OperationMethod<{
    readonly expand?: string | undefined;
    readonly limit?: number | undefined;
    readonly page?: string | undefined;
    readonly query: string;
}, {
    readonly data: readonly {
        readonly active: boolean;
        readonly created: number;
        readonly default_price?: unknown;
        readonly description: string | null;
        readonly id: string;
        readonly images: readonly string[];
        readonly livemode: boolean;
        readonly marketing_features: readonly {
            readonly name?: string | undefined;
        }[];
        readonly metadata: {
            readonly [x: string]: string;
        };
        readonly name: string;
        readonly object: "product";
        readonly package_dimensions: unknown;
        readonly shippable: boolean | null;
        readonly statement_descriptor?: string | null | undefined;
        readonly tax_code?: unknown;
        readonly type: "good" | "service";
        readonly unit_label?: string | null | undefined;
        readonly updated: number;
        readonly url: string | null;
    }[];
    readonly has_more: boolean;
    readonly next_page: string | null;
    readonly object: "search_result";
    readonly total_count?: number | undefined;
    readonly url: string;
}, never, import("../credentials.ts").Credentials>;
//# sourceMappingURL=GetProductsSearch.d.ts.map