import * as pulumi from "@pulumi/pulumi";
/**
 * The AWS::EC2::TransitGatewayMulticastGroupSource registers and deregisters members and sources (network interfaces) with the transit gateway multicast group
 */
export declare function getTransitGatewayMulticastGroupSource(args: GetTransitGatewayMulticastGroupSourceArgs, opts?: pulumi.InvokeOptions): Promise<GetTransitGatewayMulticastGroupSourceResult>;
export interface GetTransitGatewayMulticastGroupSourceArgs {
    /**
     * The IP address assigned to the transit gateway multicast group.
     */
    groupIpAddress: string;
    /**
     * The ID of the transit gateway attachment.
     */
    networkInterfaceId: string;
    /**
     * The ID of the transit gateway multicast domain.
     */
    transitGatewayMulticastDomainId: string;
}
export interface GetTransitGatewayMulticastGroupSourceResult {
    /**
     * Indicates that the resource is a transit gateway multicast group member.
     */
    readonly groupMember?: boolean;
    /**
     * Indicates that the resource is a transit gateway multicast group member.
     */
    readonly groupSource?: boolean;
    /**
     * The ID of the resource.
     */
    readonly resourceId?: string;
    /**
     * The type of resource, for example a VPC attachment.
     */
    readonly resourceType?: string;
    /**
     * The source type.
     */
    readonly sourceType?: string;
    /**
     * The ID of the subnet.
     */
    readonly subnetId?: string;
    /**
     * The ID of the transit gateway attachment.
     */
    readonly transitGatewayAttachmentId?: string;
}
/**
 * The AWS::EC2::TransitGatewayMulticastGroupSource registers and deregisters members and sources (network interfaces) with the transit gateway multicast group
 */
export declare function getTransitGatewayMulticastGroupSourceOutput(args: GetTransitGatewayMulticastGroupSourceOutputArgs, opts?: pulumi.InvokeOutputOptions): pulumi.Output<GetTransitGatewayMulticastGroupSourceResult>;
export interface GetTransitGatewayMulticastGroupSourceOutputArgs {
    /**
     * The IP address assigned to the transit gateway multicast group.
     */
    groupIpAddress: pulumi.Input<string>;
    /**
     * The ID of the transit gateway attachment.
     */
    networkInterfaceId: pulumi.Input<string>;
    /**
     * The ID of the transit gateway multicast domain.
     */
    transitGatewayMulticastDomainId: pulumi.Input<string>;
}
