import * as z from "zod/v3";
import { ClosedEnum } from "../types/enums.js";
import { Result as SafeParseResult } from "../types/fp.js";
import { Flag } from "./flag.js";
import { MarketplaceFlag } from "./marketplaceflag.js";
import { SDKValidationError } from "./sdkvalidationerror.js";
/**
 * The state of the flags to retrieve. Defaults to `active`.
 */
export declare const ListTeamFlagsV2QueryParamState: {
    readonly Active: "active";
    readonly Archived: "archived";
};
/**
 * The state of the flags to retrieve. Defaults to `active`.
 */
export type ListTeamFlagsV2QueryParamState = ClosedEnum<typeof ListTeamFlagsV2QueryParamState>;
/**
 * The kind of flags to retrieve.
 */
export declare const QueryParamKind: {
    readonly Boolean: "boolean";
    readonly String: "string";
    readonly Number: "number";
    readonly Json: "json";
};
/**
 * The kind of flags to retrieve.
 */
export type QueryParamKind = ClosedEnum<typeof QueryParamKind>;
export type ListTeamFlagsV2Request = {
    /**
     * The state of the flags to retrieve. Defaults to `active`.
     */
    state?: ListTeamFlagsV2QueryParamState | undefined;
    /**
     * Maximum number of flags to return.
     */
    limit?: number | undefined;
    /**
     * Pagination cursor to continue from.
     */
    cursor?: string | undefined;
    /**
     * Search flags by their slug or description. Case-insensitive.
     */
    search?: string | undefined;
    /**
     * The kind of flags to retrieve.
     */
    kind?: QueryParamKind | undefined;
    /**
     * Filter flags by tag. Repeat the parameter for multiple tags (all must match).
     */
    tags?: Array<string> | undefined;
    /**
     * Filter flags by the id of the entity that created them (a user or team id).
     */
    createdBy?: string | undefined;
    /**
     * Filter flags by maintainer user id. Repeat the parameter for multiple maintainers (any may match).
     */
    maintainerIds?: Array<string> | undefined;
    /**
     * Whether to include Marketplace experimentation items in the paginated response. Defaults to false.
     */
    includeMarketplaceFlags?: boolean | undefined;
    /**
     * The Team identifier to perform the request on behalf of.
     */
    teamId: string;
    /**
     * The Team slug to perform the request on behalf of.
     */
    slug?: string | undefined;
};
export type ListTeamFlagsV2Pagination = {
    next: string | null;
};
export type ListTeamFlagsV2Data = (Flag & {
    typeName: "flag";
}) | MarketplaceFlag;
export type ListTeamFlagsV2ResponseBody = {
    pagination: ListTeamFlagsV2Pagination;
    data: Array<(Flag & {
        typeName: "flag";
    }) | MarketplaceFlag>;
};
/** @internal */
export declare const ListTeamFlagsV2QueryParamState$outboundSchema: z.ZodNativeEnum<typeof ListTeamFlagsV2QueryParamState>;
/** @internal */
export declare const QueryParamKind$outboundSchema: z.ZodNativeEnum<typeof QueryParamKind>;
/** @internal */
export type ListTeamFlagsV2Request$Outbound = {
    state?: string | undefined;
    limit: number;
    cursor?: string | undefined;
    search?: string | undefined;
    kind?: string | undefined;
    tags?: Array<string> | undefined;
    createdBy?: string | undefined;
    maintainerIds?: Array<string> | undefined;
    includeMarketplaceFlags?: boolean | undefined;
    teamId: string;
    slug?: string | undefined;
};
/** @internal */
export declare const ListTeamFlagsV2Request$outboundSchema: z.ZodType<ListTeamFlagsV2Request$Outbound, z.ZodTypeDef, ListTeamFlagsV2Request>;
export declare function listTeamFlagsV2RequestToJSON(listTeamFlagsV2Request: ListTeamFlagsV2Request): string;
/** @internal */
export declare const ListTeamFlagsV2Pagination$inboundSchema: z.ZodType<ListTeamFlagsV2Pagination, z.ZodTypeDef, unknown>;
export declare function listTeamFlagsV2PaginationFromJSON(jsonString: string): SafeParseResult<ListTeamFlagsV2Pagination, SDKValidationError>;
/** @internal */
export declare const ListTeamFlagsV2Data$inboundSchema: z.ZodType<ListTeamFlagsV2Data, z.ZodTypeDef, unknown>;
export declare function listTeamFlagsV2DataFromJSON(jsonString: string): SafeParseResult<ListTeamFlagsV2Data, SDKValidationError>;
/** @internal */
export declare const ListTeamFlagsV2ResponseBody$inboundSchema: z.ZodType<ListTeamFlagsV2ResponseBody, z.ZodTypeDef, unknown>;
export declare function listTeamFlagsV2ResponseBodyFromJSON(jsonString: string): SafeParseResult<ListTeamFlagsV2ResponseBody, SDKValidationError>;
//# sourceMappingURL=listteamflagsv2op.d.ts.map