import * as z from "zod/v4-mini";
import { Result as SafeParseResult } from "../../types/fp.js";
import { SDKValidationError } from "../errors/sdkvalidationerror.js";
import { BenefitGrantError } from "./benefitgranterror.js";
import { BenefitGrantSlackSharedChannelProperties } from "./benefitgrantslacksharedchannelproperties.js";
import { BenefitSlackSharedChannelSubscriber } from "./benefitslacksharedchannelsubscriber.js";
import { CustomerPortalCustomer } from "./customerportalcustomer.js";
export type CustomerBenefitGrantSlackSharedChannel = {
    /**
     * Creation timestamp of the object.
     */
    createdAt: Date;
    /**
     * Last modification timestamp of the object.
     */
    modifiedAt: Date | null;
    /**
     * The ID of the object.
     */
    id: string;
    grantedAt: Date | null;
    revokedAt: Date | null;
    customerId: string;
    memberId?: string | null | undefined;
    benefitId: string;
    subscriptionId: string | null;
    orderId: string | null;
    isGranted: boolean;
    isRevoked: boolean;
    error?: BenefitGrantError | null | undefined;
    customer: CustomerPortalCustomer;
    benefit: BenefitSlackSharedChannelSubscriber;
    properties: BenefitGrantSlackSharedChannelProperties;
};
/** @internal */
export declare const CustomerBenefitGrantSlackSharedChannel$inboundSchema: z.ZodMiniType<CustomerBenefitGrantSlackSharedChannel, unknown>;
export declare function customerBenefitGrantSlackSharedChannelFromJSON(jsonString: string): SafeParseResult<CustomerBenefitGrantSlackSharedChannel, SDKValidationError>;
//# sourceMappingURL=customerbenefitgrantslacksharedchannel.d.ts.map