|
|
|
|
@@ -88,12 +88,6 @@ export type AppleIapSubscriptionOptionsGql = {
|
|
|
|
|
productIds: Array<Scalars["String"]["output"]>;
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
export type BallTrajectoryGql = {
|
|
|
|
|
__typename?: "BallTrajectoryGQL";
|
|
|
|
|
ballId: Scalars["Int"]["output"];
|
|
|
|
|
points: Array<TrajectoryPointGql>;
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
export type BankFeaturesGql = {
|
|
|
|
|
__typename?: "BankFeaturesGQL";
|
|
|
|
|
bankAngle: Scalars["Float"]["output"];
|
|
|
|
|
@@ -274,14 +268,6 @@ export type CueObjectFeaturesGql = {
|
|
|
|
|
spinType?: Maybe<SpinTypeEnum>;
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
export type CueStrikeInputGql = {
|
|
|
|
|
a?: Scalars["Float"]["input"];
|
|
|
|
|
b?: Scalars["Float"]["input"];
|
|
|
|
|
phi: Scalars["Float"]["input"];
|
|
|
|
|
theta?: Scalars["Float"]["input"];
|
|
|
|
|
v0: Scalars["Float"]["input"];
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
export type DateRangeFilter = {
|
|
|
|
|
greaterThan?: InputMaybe<Scalars["Date"]["input"]>;
|
|
|
|
|
greaterThanEqualTo?: InputMaybe<Scalars["Date"]["input"]>;
|
|
|
|
|
@@ -314,7 +300,6 @@ export type DeployedConfigGql = {
|
|
|
|
|
firebase: Scalars["Boolean"]["output"];
|
|
|
|
|
minimumAllowedAppVersion: Scalars["String"]["output"];
|
|
|
|
|
quotaEnforcementEnabled: Scalars["Boolean"]["output"];
|
|
|
|
|
storageLimitEnforcementEnabled: Scalars["Boolean"]["output"];
|
|
|
|
|
subscriptionGatingEnabled: Scalars["Boolean"]["output"];
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
@@ -2302,7 +2287,7 @@ export type GetShotsResult = {
|
|
|
|
|
|
|
|
|
|
export type GetUploadLinkErrors = {
|
|
|
|
|
__typename?: "GetUploadLinkErrors";
|
|
|
|
|
error: MustHaveSetForUploadLinkErrSegmentAlreadyUploadedErrProcessingFailedErrNoInitForChunkedUploadErrTooManyProfileImageUploadsErrInitUploadAlreadyCompletedErrTooManyInitUploadsErrStorageLimitExceededErr;
|
|
|
|
|
error: MustHaveSetForUploadLinkErrSegmentAlreadyUploadedErrProcessingFailedErrNoInitForChunkedUploadErrTooManyProfileImageUploadsErrInitUploadAlreadyCompletedErrTooManyInitUploadsErr;
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
export type GetUploadLinkReturn = {
|
|
|
|
|
@@ -2406,14 +2391,13 @@ export type MustHaveSetForUploadLinkErr = {
|
|
|
|
|
resolution?: Maybe<Scalars["Boolean"]["output"]>;
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
export type MustHaveSetForUploadLinkErrSegmentAlreadyUploadedErrProcessingFailedErrNoInitForChunkedUploadErrTooManyProfileImageUploadsErrInitUploadAlreadyCompletedErrTooManyInitUploadsErrStorageLimitExceededErr =
|
|
|
|
|
export type MustHaveSetForUploadLinkErrSegmentAlreadyUploadedErrProcessingFailedErrNoInitForChunkedUploadErrTooManyProfileImageUploadsErrInitUploadAlreadyCompletedErrTooManyInitUploadsErr =
|
|
|
|
|
|
|
|
|
|
| InitUploadAlreadyCompletedErr
|
|
|
|
|
| MustHaveSetForUploadLinkErr
|
|
|
|
|
| NoInitForChunkedUploadErr
|
|
|
|
|
| ProcessingFailedErr
|
|
|
|
|
| SegmentAlreadyUploadedErr
|
|
|
|
|
| StorageLimitExceededErr
|
|
|
|
|
| TooManyInitUploadsErr
|
|
|
|
|
| TooManyProfileImageUploadsErr;
|
|
|
|
|
|
|
|
|
|
@@ -2902,7 +2886,6 @@ export type Query = {
|
|
|
|
|
myVideoExports: Array<VideoExportJobGql>;
|
|
|
|
|
notifications: NotificationConnection;
|
|
|
|
|
ruleSets: Array<RuleSet>;
|
|
|
|
|
simulateShot: ShotProjectionGql;
|
|
|
|
|
unreadNotificationCount: Scalars["Int"]["output"];
|
|
|
|
|
videoExportJob?: Maybe<VideoExportJobGql>;
|
|
|
|
|
videoPlayerClusters: Array<PlayerClusterGql>;
|
|
|
|
|
@@ -3092,10 +3075,6 @@ export type QueryNotificationsArgs = {
|
|
|
|
|
offset?: Scalars["Int"]["input"];
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
export type QuerySimulateShotArgs = {
|
|
|
|
|
simulationInput: SimulateShotInputGql;
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
export type QueryVideoExportJobArgs = {
|
|
|
|
|
jobId: Scalars["Int"]["input"];
|
|
|
|
|
};
|
|
|
|
|
@@ -3359,14 +3338,6 @@ export type ShotMoveInput = {
|
|
|
|
|
shotId: Scalars["Int"]["input"];
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
export type ShotProjectionGql = {
|
|
|
|
|
__typename?: "ShotProjectionGQL";
|
|
|
|
|
events: Array<SimulationEventGql>;
|
|
|
|
|
finalState: Array<SimulationBallStateGql>;
|
|
|
|
|
pottedBallIds: Array<Scalars["Int"]["output"]>;
|
|
|
|
|
trajectories: Array<BallTrajectoryGql>;
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
export type ShotsOrderingComponent =
|
|
|
|
|
| {
|
|
|
|
|
difficulty: FloatOrdering;
|
|
|
|
|
@@ -3417,42 +3388,6 @@ export type ShotsOrderingComponent =
|
|
|
|
|
videoId: IntOrdering;
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
export type SimulateShotInputGql = {
|
|
|
|
|
b64Image?: InputMaybe<Scalars["String"]["input"]>;
|
|
|
|
|
balls?: InputMaybe<Array<SimulationBallStateInputGql>>;
|
|
|
|
|
cueBallId: Scalars["Int"]["input"];
|
|
|
|
|
strike: CueStrikeInputGql;
|
|
|
|
|
tableSize?: InputMaybe<Scalars["Float"]["input"]>;
|
|
|
|
|
useHomography?: InputMaybe<HomographyInputGql>;
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
export type SimulationBallStateGql = {
|
|
|
|
|
__typename?: "SimulationBallStateGQL";
|
|
|
|
|
ballId: Scalars["Int"]["output"];
|
|
|
|
|
position: Array<Scalars["Float"]["output"]>;
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
export type SimulationBallStateInputGql = {
|
|
|
|
|
ballId: Scalars["Int"]["input"];
|
|
|
|
|
position: Array<Scalars["Float"]["input"]>;
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
export type SimulationEventGql = {
|
|
|
|
|
__typename?: "SimulationEventGQL";
|
|
|
|
|
ballIds: Array<Scalars["Int"]["output"]>;
|
|
|
|
|
eventType: SimulationEventType;
|
|
|
|
|
position?: Maybe<Array<Scalars["Float"]["output"]>>;
|
|
|
|
|
time: Scalars["Float"]["output"];
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
export enum SimulationEventType {
|
|
|
|
|
BallBall = "BALL_BALL",
|
|
|
|
|
BallCushion = "BALL_CUSHION",
|
|
|
|
|
BallPocket = "BALL_POCKET",
|
|
|
|
|
BallStop = "BALL_STOP",
|
|
|
|
|
StickBall = "STICK_BALL",
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
export type SpinTypeBreakdownGql = {
|
|
|
|
|
__typename?: "SpinTypeBreakdownGQL";
|
|
|
|
|
center: Scalars["Int"]["output"];
|
|
|
|
|
@@ -3475,15 +3410,6 @@ export enum SpinTypeEnum {
|
|
|
|
|
Unknown = "UNKNOWN",
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
export type StorageLimitExceededErr = {
|
|
|
|
|
__typename?: "StorageLimitExceededErr";
|
|
|
|
|
reason: Scalars["String"]["output"];
|
|
|
|
|
remainingStorageBytes?: Maybe<Scalars["BigInt"]["output"]>;
|
|
|
|
|
retainedStorageLimitBytes?: Maybe<Scalars["BigInt"]["output"]>;
|
|
|
|
|
retainedStorageUsedBytes: Scalars["BigInt"]["output"];
|
|
|
|
|
tierName: Scalars["String"]["output"];
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
export type StorageStatusGql = {
|
|
|
|
|
__typename?: "StorageStatusGQL";
|
|
|
|
|
isNearLimit: Scalars["Boolean"]["output"];
|
|
|
|
|
@@ -3629,12 +3555,6 @@ export type TooManyProfileImageUploadsErr = {
|
|
|
|
|
linksRequested: Scalars["Int"]["output"];
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
export type TrajectoryPointGql = {
|
|
|
|
|
__typename?: "TrajectoryPointGQL";
|
|
|
|
|
position: Array<Scalars["Float"]["output"]>;
|
|
|
|
|
time: Scalars["Float"]["output"];
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
export type UpdateAnnotationInputGql = {
|
|
|
|
|
name: Scalars["String"]["input"];
|
|
|
|
|
notes?: InputMaybe<Scalars["String"]["input"]>;
|
|
|
|
|
@@ -5264,6 +5184,45 @@ export type GetSubscriptionStatusQuery = {
|
|
|
|
|
};
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
export type GetResolvedTierQueryVariables = Exact<{ [key: string]: never }>;
|
|
|
|
|
|
|
|
|
|
export type GetResolvedTierQuery = {
|
|
|
|
|
__typename?: "Query";
|
|
|
|
|
getResolvedTier: {
|
|
|
|
|
__typename?: "ResolvedTierGQL";
|
|
|
|
|
tierName: string;
|
|
|
|
|
tierDisplayName: string;
|
|
|
|
|
hasActiveSubscription: boolean;
|
|
|
|
|
entitlementSource?: EntitlementSourceTypeEnum | null;
|
|
|
|
|
entitlementStatus?: string | null;
|
|
|
|
|
entitlementStartsAt?: any | null;
|
|
|
|
|
entitlementEndsAt?: any | null;
|
|
|
|
|
capabilities: Array<string>;
|
|
|
|
|
};
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
export type GetStorageStatusQueryVariables = Exact<{ [key: string]: never }>;
|
|
|
|
|
|
|
|
|
|
export type GetStorageStatusQuery = {
|
|
|
|
|
__typename?: "Query";
|
|
|
|
|
getStorageStatus?: {
|
|
|
|
|
__typename?: "StorageStatusGQL";
|
|
|
|
|
userId: number;
|
|
|
|
|
tierName: string;
|
|
|
|
|
retainedStorageUsedBytes: any;
|
|
|
|
|
retainedStorageLimitBytes?: any | null;
|
|
|
|
|
isUnlimited: boolean;
|
|
|
|
|
policyConfigured: boolean;
|
|
|
|
|
remainingStorageBytes?: any | null;
|
|
|
|
|
storageUsageRatio?: number | null;
|
|
|
|
|
isNearLimit: boolean;
|
|
|
|
|
isOverLimit: boolean;
|
|
|
|
|
usageCalculated: boolean;
|
|
|
|
|
usageSource?: string | null;
|
|
|
|
|
lastCalculatedAt?: any | null;
|
|
|
|
|
} | null;
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
export type GetAppleAppAccountTokenQueryVariables = Exact<{
|
|
|
|
|
[key: string]: never;
|
|
|
|
|
}>;
|
|
|
|
|
@@ -7271,7 +7230,6 @@ export type GetUploadLinkMutation = {
|
|
|
|
|
};
|
|
|
|
|
}
|
|
|
|
|
| { __typename?: "SegmentAlreadyUploadedErr"; segmentId: number }
|
|
|
|
|
| { __typename?: "StorageLimitExceededErr" }
|
|
|
|
|
| { __typename?: "TooManyInitUploadsErr" }
|
|
|
|
|
| { __typename?: "TooManyProfileImageUploadsErr" };
|
|
|
|
|
}
|
|
|
|
|
@@ -7314,14 +7272,6 @@ export type GetHlsInitUploadLinkMutation = {
|
|
|
|
|
}
|
|
|
|
|
| { __typename?: "ProcessingFailedErr" }
|
|
|
|
|
| { __typename?: "SegmentAlreadyUploadedErr" }
|
|
|
|
|
| {
|
|
|
|
|
__typename?: "StorageLimitExceededErr";
|
|
|
|
|
reason: string;
|
|
|
|
|
tierName: string;
|
|
|
|
|
retainedStorageUsedBytes: any;
|
|
|
|
|
retainedStorageLimitBytes?: any | null;
|
|
|
|
|
remainingStorageBytes?: any | null;
|
|
|
|
|
}
|
|
|
|
|
| { __typename?: "TooManyInitUploadsErr"; linksRequested: number }
|
|
|
|
|
| { __typename?: "TooManyProfileImageUploadsErr" };
|
|
|
|
|
}
|
|
|
|
|
@@ -11150,6 +11100,169 @@ export type GetSubscriptionStatusQueryResult = Apollo.QueryResult<
|
|
|
|
|
GetSubscriptionStatusQuery,
|
|
|
|
|
GetSubscriptionStatusQueryVariables
|
|
|
|
|
>;
|
|
|
|
|
export const GetResolvedTierDocument = gql`
|
|
|
|
|
query GetResolvedTier {
|
|
|
|
|
getResolvedTier {
|
|
|
|
|
tierName
|
|
|
|
|
tierDisplayName
|
|
|
|
|
hasActiveSubscription
|
|
|
|
|
entitlementSource
|
|
|
|
|
entitlementStatus
|
|
|
|
|
entitlementStartsAt
|
|
|
|
|
entitlementEndsAt
|
|
|
|
|
capabilities
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
`;
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* __useGetResolvedTierQuery__
|
|
|
|
|
*
|
|
|
|
|
* To run a query within a React component, call `useGetResolvedTierQuery` and pass it any options that fit your needs.
|
|
|
|
|
* When your component renders, `useGetResolvedTierQuery` returns an object from Apollo Client that contains loading, error, and data properties
|
|
|
|
|
* you can use to render your UI.
|
|
|
|
|
*
|
|
|
|
|
* @param baseOptions options that will be passed into the query, supported options are listed on: https://www.apollographql.com/docs/react/api/react-hooks/#options;
|
|
|
|
|
*
|
|
|
|
|
* @example
|
|
|
|
|
* const { data, loading, error } = useGetResolvedTierQuery({
|
|
|
|
|
* variables: {
|
|
|
|
|
* },
|
|
|
|
|
* });
|
|
|
|
|
*/
|
|
|
|
|
export function useGetResolvedTierQuery(
|
|
|
|
|
baseOptions?: Apollo.QueryHookOptions<
|
|
|
|
|
GetResolvedTierQuery,
|
|
|
|
|
GetResolvedTierQueryVariables
|
|
|
|
|
>,
|
|
|
|
|
) {
|
|
|
|
|
const options = { ...defaultOptions, ...baseOptions };
|
|
|
|
|
return Apollo.useQuery<GetResolvedTierQuery, GetResolvedTierQueryVariables>(
|
|
|
|
|
GetResolvedTierDocument,
|
|
|
|
|
options,
|
|
|
|
|
);
|
|
|
|
|
}
|
|
|
|
|
export function useGetResolvedTierLazyQuery(
|
|
|
|
|
baseOptions?: Apollo.LazyQueryHookOptions<
|
|
|
|
|
GetResolvedTierQuery,
|
|
|
|
|
GetResolvedTierQueryVariables
|
|
|
|
|
>,
|
|
|
|
|
) {
|
|
|
|
|
const options = { ...defaultOptions, ...baseOptions };
|
|
|
|
|
return Apollo.useLazyQuery<
|
|
|
|
|
GetResolvedTierQuery,
|
|
|
|
|
GetResolvedTierQueryVariables
|
|
|
|
|
>(GetResolvedTierDocument, options);
|
|
|
|
|
}
|
|
|
|
|
export function useGetResolvedTierSuspenseQuery(
|
|
|
|
|
baseOptions?: Apollo.SuspenseQueryHookOptions<
|
|
|
|
|
GetResolvedTierQuery,
|
|
|
|
|
GetResolvedTierQueryVariables
|
|
|
|
|
>,
|
|
|
|
|
) {
|
|
|
|
|
const options = { ...defaultOptions, ...baseOptions };
|
|
|
|
|
return Apollo.useSuspenseQuery<
|
|
|
|
|
GetResolvedTierQuery,
|
|
|
|
|
GetResolvedTierQueryVariables
|
|
|
|
|
>(GetResolvedTierDocument, options);
|
|
|
|
|
}
|
|
|
|
|
export type GetResolvedTierQueryHookResult = ReturnType<
|
|
|
|
|
typeof useGetResolvedTierQuery
|
|
|
|
|
>;
|
|
|
|
|
export type GetResolvedTierLazyQueryHookResult = ReturnType<
|
|
|
|
|
typeof useGetResolvedTierLazyQuery
|
|
|
|
|
>;
|
|
|
|
|
export type GetResolvedTierSuspenseQueryHookResult = ReturnType<
|
|
|
|
|
typeof useGetResolvedTierSuspenseQuery
|
|
|
|
|
>;
|
|
|
|
|
export type GetResolvedTierQueryResult = Apollo.QueryResult<
|
|
|
|
|
GetResolvedTierQuery,
|
|
|
|
|
GetResolvedTierQueryVariables
|
|
|
|
|
>;
|
|
|
|
|
export const GetStorageStatusDocument = gql`
|
|
|
|
|
query GetStorageStatus {
|
|
|
|
|
getStorageStatus {
|
|
|
|
|
userId
|
|
|
|
|
tierName
|
|
|
|
|
retainedStorageUsedBytes
|
|
|
|
|
retainedStorageLimitBytes
|
|
|
|
|
isUnlimited
|
|
|
|
|
policyConfigured
|
|
|
|
|
remainingStorageBytes
|
|
|
|
|
storageUsageRatio
|
|
|
|
|
isNearLimit
|
|
|
|
|
isOverLimit
|
|
|
|
|
usageCalculated
|
|
|
|
|
usageSource
|
|
|
|
|
lastCalculatedAt
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
`;
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* __useGetStorageStatusQuery__
|
|
|
|
|
*
|
|
|
|
|
* To run a query within a React component, call `useGetStorageStatusQuery` and pass it any options that fit your needs.
|
|
|
|
|
* When your component renders, `useGetStorageStatusQuery` returns an object from Apollo Client that contains loading, error, and data properties
|
|
|
|
|
* you can use to render your UI.
|
|
|
|
|
*
|
|
|
|
|
* @param baseOptions options that will be passed into the query, supported options are listed on: https://www.apollographql.com/docs/react/api/react-hooks/#options;
|
|
|
|
|
*
|
|
|
|
|
* @example
|
|
|
|
|
* const { data, loading, error } = useGetStorageStatusQuery({
|
|
|
|
|
* variables: {
|
|
|
|
|
* },
|
|
|
|
|
* });
|
|
|
|
|
*/
|
|
|
|
|
export function useGetStorageStatusQuery(
|
|
|
|
|
baseOptions?: Apollo.QueryHookOptions<
|
|
|
|
|
GetStorageStatusQuery,
|
|
|
|
|
GetStorageStatusQueryVariables
|
|
|
|
|
>,
|
|
|
|
|
) {
|
|
|
|
|
const options = { ...defaultOptions, ...baseOptions };
|
|
|
|
|
return Apollo.useQuery<GetStorageStatusQuery, GetStorageStatusQueryVariables>(
|
|
|
|
|
GetStorageStatusDocument,
|
|
|
|
|
options,
|
|
|
|
|
);
|
|
|
|
|
}
|
|
|
|
|
export function useGetStorageStatusLazyQuery(
|
|
|
|
|
baseOptions?: Apollo.LazyQueryHookOptions<
|
|
|
|
|
GetStorageStatusQuery,
|
|
|
|
|
GetStorageStatusQueryVariables
|
|
|
|
|
>,
|
|
|
|
|
) {
|
|
|
|
|
const options = { ...defaultOptions, ...baseOptions };
|
|
|
|
|
return Apollo.useLazyQuery<
|
|
|
|
|
GetStorageStatusQuery,
|
|
|
|
|
GetStorageStatusQueryVariables
|
|
|
|
|
>(GetStorageStatusDocument, options);
|
|
|
|
|
}
|
|
|
|
|
export function useGetStorageStatusSuspenseQuery(
|
|
|
|
|
baseOptions?: Apollo.SuspenseQueryHookOptions<
|
|
|
|
|
GetStorageStatusQuery,
|
|
|
|
|
GetStorageStatusQueryVariables
|
|
|
|
|
>,
|
|
|
|
|
) {
|
|
|
|
|
const options = { ...defaultOptions, ...baseOptions };
|
|
|
|
|
return Apollo.useSuspenseQuery<
|
|
|
|
|
GetStorageStatusQuery,
|
|
|
|
|
GetStorageStatusQueryVariables
|
|
|
|
|
>(GetStorageStatusDocument, options);
|
|
|
|
|
}
|
|
|
|
|
export type GetStorageStatusQueryHookResult = ReturnType<
|
|
|
|
|
typeof useGetStorageStatusQuery
|
|
|
|
|
>;
|
|
|
|
|
export type GetStorageStatusLazyQueryHookResult = ReturnType<
|
|
|
|
|
typeof useGetStorageStatusLazyQuery
|
|
|
|
|
>;
|
|
|
|
|
export type GetStorageStatusSuspenseQueryHookResult = ReturnType<
|
|
|
|
|
typeof useGetStorageStatusSuspenseQuery
|
|
|
|
|
>;
|
|
|
|
|
export type GetStorageStatusQueryResult = Apollo.QueryResult<
|
|
|
|
|
GetStorageStatusQuery,
|
|
|
|
|
GetStorageStatusQueryVariables
|
|
|
|
|
>;
|
|
|
|
|
export const GetAppleAppAccountTokenDocument = gql`
|
|
|
|
|
query GetAppleAppAccountToken {
|
|
|
|
|
getAppleAppAccountToken
|
|
|
|
|
@@ -15585,13 +15698,6 @@ export const GetHlsInitUploadLinkDocument = gql`
|
|
|
|
|
... on TooManyInitUploadsErr {
|
|
|
|
|
linksRequested
|
|
|
|
|
}
|
|
|
|
|
... on StorageLimitExceededErr {
|
|
|
|
|
reason
|
|
|
|
|
tierName
|
|
|
|
|
retainedStorageUsedBytes
|
|
|
|
|
retainedStorageLimitBytes
|
|
|
|
|
remainingStorageBytes
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|