import * as z from "zod";
import { Result as SafeParseResult } from "../../types/fp.js";
import { SDKValidationError } from "../errors/sdkvalidationerror.js";
import { CustomMappingError, CustomMappingError$Outbound } from "./custommappingerror.js";
import { ProviderError, ProviderError$Outbound } from "./providererror.js";
/**
 * The request URL data
 */
export type UnifiedLogsUrl = {
    /**
     * The request URL hostname
     */
    hostname?: string | null | undefined;
    /**
     * The request path
     */
    path?: string | null | undefined;
    /**
     * The request query parameters
     */
    queryParams?: {
        [k: string]: any;
    } | null | undefined;
    /**
     * The request URL
     */
    url?: string | null | undefined;
};
/**
 * The advanced log request data
 */
export type UnifiedLogsRequest = {
    body?: any | null | undefined;
    headers?: {
        [k: string]: any;
    } | null | undefined;
    /**
     * The request ID
     */
    id?: string | null | undefined;
    /**
     * The request method
     */
    method?: string | null | undefined;
    /**
     * The request URL data
     */
    url?: UnifiedLogsUrl | null | undefined;
};
/**
 * The advanced log response data
 */
export type UnifiedLogsResponse = {
    body?: any | null | undefined;
    /**
     * The custom mapping errors
     */
    customMappingErrors?: Array<CustomMappingError> | null | undefined;
    headers?: {
        [k: string]: any;
    } | null | undefined;
    /**
     * The provider errors
     */
    providerErrors?: Array<ProviderError> | null | undefined;
    /**
     * The response status code
     */
    statusCode?: number | null | undefined;
};
export type UnifiedLogs = {
    /**
     * The account ID of the request
     */
    accountId?: string | null | undefined;
    /**
     * The requested action
     */
    action?: string | null | undefined;
    /**
     * The requested child resource
     */
    childResource?: string | null | undefined;
    /**
     * The request duration in milliseconds
     */
    duration?: number | null | undefined;
    /**
     * The request end time ISO8601 date string
     */
    endTime?: Date | null | undefined;
    /**
     * The event ISO8601 date string
     */
    eventDatetime?: Date | null | undefined;
    /**
     * The requested HTTP method
     */
    httpMethod?: string | null | undefined;
    /**
     * The asynchronous worker flag
     */
    isWorker?: boolean | null | undefined;
    /**
     * The requested path
     */
    path?: string | null | undefined;
    /**
     * The project ID of the request
     */
    projectId?: string | null | undefined;
    /**
     * The requested provider
     */
    provider?: string | null | undefined;
    /**
     * The advanced log request data
     */
    request?: UnifiedLogsRequest | null | undefined;
    /**
     * The request ID
     */
    requestId?: string | null | undefined;
    /**
     * The requested resource
     */
    resource?: string | null | undefined;
    /**
     * The advanced log response data
     */
    response?: UnifiedLogsResponse | null | undefined;
    /**
     * The requested service
     */
    service?: string | null | undefined;
    /**
     * The requests source ID
     */
    sourceId?: string | null | undefined;
    /**
     * The requests source type
     */
    sourceType?: string | null | undefined;
    /**
     * The requests source value
     */
    sourceValue?: string | null | undefined;
    /**
     * The request start time ISO8601 date string
     */
    startTime?: Date | null | undefined;
    /**
     * The requests response status code
     */
    status?: number | null | undefined;
    /**
     * The list of provider requests
     */
    stepRequests?: Array<string> | null | undefined;
    /**
     * The requested sub resource
     */
    subResource?: string | null | undefined;
    /**
     * The request success flag
     */
    success?: boolean | null | undefined;
    /**
     * The requested URL
     */
    url?: string | null | undefined;
};
/** @internal */
export declare const UnifiedLogsUrl$inboundSchema: z.ZodType<UnifiedLogsUrl, z.ZodTypeDef, unknown>;
/** @internal */
export type UnifiedLogsUrl$Outbound = {
    hostname?: string | null | undefined;
    path?: string | null | undefined;
    query_params?: {
        [k: string]: any;
    } | null | undefined;
    url?: string | null | undefined;
};
/** @internal */
export declare const UnifiedLogsUrl$outboundSchema: z.ZodType<UnifiedLogsUrl$Outbound, z.ZodTypeDef, UnifiedLogsUrl>;
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
export declare namespace UnifiedLogsUrl$ {
    /** @deprecated use `UnifiedLogsUrl$inboundSchema` instead. */
    const inboundSchema: z.ZodType<UnifiedLogsUrl, z.ZodTypeDef, unknown>;
    /** @deprecated use `UnifiedLogsUrl$outboundSchema` instead. */
    const outboundSchema: z.ZodType<UnifiedLogsUrl$Outbound, z.ZodTypeDef, UnifiedLogsUrl>;
    /** @deprecated use `UnifiedLogsUrl$Outbound` instead. */
    type Outbound = UnifiedLogsUrl$Outbound;
}
export declare function unifiedLogsUrlToJSON(unifiedLogsUrl: UnifiedLogsUrl): string;
export declare function unifiedLogsUrlFromJSON(jsonString: string): SafeParseResult<UnifiedLogsUrl, SDKValidationError>;
/** @internal */
export declare const UnifiedLogsRequest$inboundSchema: z.ZodType<UnifiedLogsRequest, z.ZodTypeDef, unknown>;
/** @internal */
export type UnifiedLogsRequest$Outbound = {
    body?: any | null | undefined;
    headers?: {
        [k: string]: any;
    } | null | undefined;
    id?: string | null | undefined;
    method?: string | null | undefined;
    url?: UnifiedLogsUrl$Outbound | null | undefined;
};
/** @internal */
export declare const UnifiedLogsRequest$outboundSchema: z.ZodType<UnifiedLogsRequest$Outbound, z.ZodTypeDef, UnifiedLogsRequest>;
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
export declare namespace UnifiedLogsRequest$ {
    /** @deprecated use `UnifiedLogsRequest$inboundSchema` instead. */
    const inboundSchema: z.ZodType<UnifiedLogsRequest, z.ZodTypeDef, unknown>;
    /** @deprecated use `UnifiedLogsRequest$outboundSchema` instead. */
    const outboundSchema: z.ZodType<UnifiedLogsRequest$Outbound, z.ZodTypeDef, UnifiedLogsRequest>;
    /** @deprecated use `UnifiedLogsRequest$Outbound` instead. */
    type Outbound = UnifiedLogsRequest$Outbound;
}
export declare function unifiedLogsRequestToJSON(unifiedLogsRequest: UnifiedLogsRequest): string;
export declare function unifiedLogsRequestFromJSON(jsonString: string): SafeParseResult<UnifiedLogsRequest, SDKValidationError>;
/** @internal */
export declare const UnifiedLogsResponse$inboundSchema: z.ZodType<UnifiedLogsResponse, z.ZodTypeDef, unknown>;
/** @internal */
export type UnifiedLogsResponse$Outbound = {
    body?: any | null | undefined;
    custom_mapping_errors?: Array<CustomMappingError$Outbound> | null | undefined;
    headers?: {
        [k: string]: any;
    } | null | undefined;
    provider_errors?: Array<ProviderError$Outbound> | null | undefined;
    status_code?: number | null | undefined;
};
/** @internal */
export declare const UnifiedLogsResponse$outboundSchema: z.ZodType<UnifiedLogsResponse$Outbound, z.ZodTypeDef, UnifiedLogsResponse>;
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
export declare namespace UnifiedLogsResponse$ {
    /** @deprecated use `UnifiedLogsResponse$inboundSchema` instead. */
    const inboundSchema: z.ZodType<UnifiedLogsResponse, z.ZodTypeDef, unknown>;
    /** @deprecated use `UnifiedLogsResponse$outboundSchema` instead. */
    const outboundSchema: z.ZodType<UnifiedLogsResponse$Outbound, z.ZodTypeDef, UnifiedLogsResponse>;
    /** @deprecated use `UnifiedLogsResponse$Outbound` instead. */
    type Outbound = UnifiedLogsResponse$Outbound;
}
export declare function unifiedLogsResponseToJSON(unifiedLogsResponse: UnifiedLogsResponse): string;
export declare function unifiedLogsResponseFromJSON(jsonString: string): SafeParseResult<UnifiedLogsResponse, SDKValidationError>;
/** @internal */
export declare const UnifiedLogs$inboundSchema: z.ZodType<UnifiedLogs, z.ZodTypeDef, unknown>;
/** @internal */
export type UnifiedLogs$Outbound = {
    account_id?: string | null | undefined;
    action?: string | null | undefined;
    child_resource?: string | null | undefined;
    duration?: number | null | undefined;
    end_time?: string | null | undefined;
    event_datetime?: string | null | undefined;
    http_method?: string | null | undefined;
    is_worker?: boolean | null | undefined;
    path?: string | null | undefined;
    project_id?: string | null | undefined;
    provider?: string | null | undefined;
    request?: UnifiedLogsRequest$Outbound | null | undefined;
    request_id?: string | null | undefined;
    resource?: string | null | undefined;
    response?: UnifiedLogsResponse$Outbound | null | undefined;
    service?: string | null | undefined;
    source_id?: string | null | undefined;
    source_type?: string | null | undefined;
    source_value?: string | null | undefined;
    start_time?: string | null | undefined;
    status?: number | null | undefined;
    step_requests?: Array<string> | null | undefined;
    sub_resource?: string | null | undefined;
    success?: boolean | null | undefined;
    url?: string | null | undefined;
};
/** @internal */
export declare const UnifiedLogs$outboundSchema: z.ZodType<UnifiedLogs$Outbound, z.ZodTypeDef, UnifiedLogs>;
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
export declare namespace UnifiedLogs$ {
    /** @deprecated use `UnifiedLogs$inboundSchema` instead. */
    const inboundSchema: z.ZodType<UnifiedLogs, z.ZodTypeDef, unknown>;
    /** @deprecated use `UnifiedLogs$outboundSchema` instead. */
    const outboundSchema: z.ZodType<UnifiedLogs$Outbound, z.ZodTypeDef, UnifiedLogs>;
    /** @deprecated use `UnifiedLogs$Outbound` instead. */
    type Outbound = UnifiedLogs$Outbound;
}
export declare function unifiedLogsToJSON(unifiedLogs: UnifiedLogs): string;
export declare function unifiedLogsFromJSON(jsonString: string): SafeParseResult<UnifiedLogs, SDKValidationError>;
//# sourceMappingURL=unifiedlogs.d.ts.map